day15模块的三种形式_内置模块


bay15

今日内容

  • 模块知识

  • 内置模块

    • time

    • datetime

    • json

    • 其他

内容回顾&作业题

def goods():
   """
  商品管理
  :return:
  """
   func_dict = {"1":goods_list,"2":search_goods,"
3":create_goods}
   while True:
    print("1,商品列表;2.模糊搜索,3.求人信息")
    num = input("请选择序号(N/n):")
    if num.upper() =="n":
       return
    func = func_dict.get(num)
    if not func:
        print("输入错误,请重新输入!")
        continue
    func()

今日模块和方法

  • sys

    import sys    
    sys.exit(0)    # sys模块里的exit方法
    #作用终止程序
  • 如果你想将a和b的值调换,python有一个写法

    #普通方法
    a=1
    b=2
    ?
    v=a
    a=b
    b=v
    #python写法
    a=1
    b=2
    ?
    a,b = b,a

    斐波那契数列

  num1 = 0
num2 = 1
 while True
print(num2)
     num1,num2 = num2,num1+num2
  • 练习题

    dic1 = {"k1":1"k2":"alex","k3":9}
    dic2 = {"k1":3"k4":"alex","k2":"xx"}
    ?
    for k,v in dic2.items()
    if k not in dic1:
           dic1[k] = v
           continue
       dic1[k] = dic1[k] + v
    print(dic1)

重要知识点

  • 构造字典和函数对应关系,避免重复的if else

  • a=1 b=2 ==> a,b = b,a

  • 装饰器

  • 找文件路径

  • 脚本参数

  • sys.exit

  • range/xrange

  • 读大文件

  • 面试题如果遇到有歧义,一定要给出多种情况。

今日内容

1.模块基本知识

  • 内置模块,python内部提供的功能。

    import sys
    print(sys.atgv)
  • 第三方模块,下载/安装/使用。

    #把pip.exe所在的目录添加到环境变量中。
    #https://pypi.org
    pip install 要安装的模块名称  #pip install xlrd
    模块会被安装到c:/python39/lib/site-packages
    • 网慢

    • python36 -m pip install --upgrade pip

    • 安装完成后,如果导入不成功。

      • 重启pycharm。

      • 安装错了。

  • 自定义模块

    • xxxx.py

    def f1():
       print("f1")
       
    def f2():
       print("f2")
    • x1.py

    #掉用自定义模块中的功能
    import xxxx
    xxxx.f1()
    xxxx.f2()

2.内置模块

2.1 os
  • os.mkdir,创建目录

  • os.makedirs,创建目录

    import os
    file_path = r"db\xx\sd\xxx.txt"

    file_folder = os.path.dirname(file_path)
    if not os.path.exists(file_folder):
    os.makedirs(file_folder)

    with open(file_path,mode="w",encodng="utf-8")as f:
    f.write("alksdf")

     

  • os.path.join

  • os.path.dirname,获取当前路径

  • os.path.abspath

  • os.path.exists,查看路径是否存在

  • os.stat("文件路径")

  • os.listdir

  • os.walk

  • os.rename,重命名

    import os
    os.remane("da","sd")
2.2 sys
  • sys.argv

  • sys.path,默认python去导入模块时,会按照sys.path中的路径挨个查找。

  • sys是解释器相关的数据:递归次数/引用次数

2.3json
  • json是一个特殊的字符串 zhei sen

  • json.dumps,序列化

    import json
    #序列化,将python的值转换为json格式的字符串。
    v = [12,3,4,{"k1","v1"},True,"asdg"]
    v1 = json.dumps(v)
    print(v1)
  • json.loads,反序列化

    import json
    #序列化,将python的值转换为json格式的字符串。
    v = "[3,4,{"k1","v1"},True,"asdg"]"
    v1 = json.loads(v)
    print(v1)
  • 示例

    import requests
    import json

    response = requests.get("https://wwww sdl.com")
    data = json.loads(response)
    print(type(data))
    print(data)
    # ###############################
    import requests

    response = requests.get("https://www.runoob.com/python3/python3-tutorial.html")
    print(type(response))
    print(response)
    with open("b.html", mode="wb",)as f:
    for i in response:
    f.write(i)