zoukankan      html  css  js  c++  java
  • 十.模块和库

    1.模块操作:

    • 导入单独的模块:
      • 把模块文件的位置,添加到sys.path中。(不常用)
      • 把模块放到“lib\site-packages\”目录下。(PyCharm兼容性更好)
    • 导入包(文件夹):
        • 方法与单独模块一样,且包下面必须要有__init__.py文件
    • #模块目录的查找和打印-------------------------------------------------------
      import sys,pprint
      #查目录
      ModulePath=sys.path
      #可以逐行打印
      pprint.pprint(ModulePath)
      
      
      #模块的导入------------------------------------------------------------------
      #添加模块目录,这种做法不常用
      ModulePath.append("C:\Users\i2011\PycharmProjects\Python基础教程学习代码\charpter10---模块和标准库")
      # #添加后可以导入模块
      # import Module_Test
      
      # #也可以把模块放入"lib\site-packages\"下
      # import test_hello
      
      #导入目录包,目录下必须要有__init__.py文件
      #导入site-packages下的包,不import其他py文件
      import MyPackage #仅默认导入__init__.py
      import MyPackage.test_hello
      #导入添加的目录的包
      import Package_Test
      import Package_Test.Module_Test
      
      #模块重新导入
      import importlib
      MyPackage=importlib.reload(MyPackage)
      MyPackage.test_hello=importlib.reload(MyPackage.test_hello)
      Package_Test=importlib.reload(Package_Test)
      
      
      #模块的探索---------------------------------------------------------------------
      import copy
      print(dir(copy)) #包含隐藏的内容
      a=[n for n in dir(copy) if not n.startswith("_")] #这样将过滤到_开头的隐藏内容
      print(a)
      #模块中__all__,指定的内容
      #在模块中设置__all__,在from copy import* 语句中导入__all__中指定内容,否则导入所有不以_打头的全局名称
      print(copy.__all__)
      
      #查看模块的帮助
      help(copy.copy)
      
      #查看函数的内置文档
      print(range.__doc__)
      
      #查看模块的位置
      print(copy.__file__)

    2.标准库

    • sys与os
      import sys
      print(sys.argv)
      
      import os
      #打开window应用程序,必须按照windows shell格式
      #下面两句将执行win应用,第一句单双引号反了不行
      #os.system(r'C:"Program Files (x86)""Maxthon5""Bin"Maxthon.exe')  #os.system打开外部应用,应用结束后才进入下一句代码
      # os.startfile(r"C:Program Files (x86)GoogleChromeApplicationchrome.exe")
      # os.startfile(r"C:Program Files (x86)Maxthon5BinMaxthon.exe")
      # os.startfile(r"D:Program Files (x86)360ChromeChromeApplication360chrome.exe")
      
      #直接打开网页
      # import webbrowser
      # webbrowser.open("https://www.python.org")
      
      # import fileinput
      # for line in fileinput.input(inplace=True):
      #     line=line.rstrip()
      #     num=fileinput.lineno()
      #     print("{:<50} # {:2d}".format(line,num))
      
      #集合,没有重复的元素
      a=set([1,2,3,4,2,1])
      print(a) #{1, 2, 3, 4}
      #{...}来设定集合,但是不能{},{}表示字典
      b={2,3,8,8,8,8,"abc","abc","abc"}
      print(b) #{8, 2, 3, 'abc'}
      print(a.union(b),a|b,a&b) #集合运算
      #集合是可变的,不能用作字典中的键。集合只能包含不可变(可散列)的值,不能包含其他集合
      a.add(frozenset(b)) #如果要包含其他集合,必须冻结住该集合
      print(a) #{1, 2, 3, 4, frozenset({8, 2, 3, 'abc'})}
    • shelve
      #shelve模块是一个简单的将内存数据通过文件持久化的模块
      #shelve模块用于创建一个永久性映射
      import shelve
      #s得到一个shelf对象
      try:
          s=shelve.open("test.csv",writeback=True)
          s["y"]=["a","b","c"]
          s["y"].append("d")
          info={'age':22,'job':'IT'}
          name=["ZhangYuan","Rain","Test"]
          s["name1"] =name
          s["info1"] = info
          print(dict(s))
      finally: #防止数据库文件受损,在最后应该关闭它
          s.close()
  • 相关阅读:
    服务器 防Dos攻击
    多浏览器 div 半透明
    网站工具收集
    广告平台
    ie6 position:fixed
    数据图 饼图 曲线图
    36个css框架
    css3 特效
    日ip 日pv
    网站 需求分析 收集
  • 原文地址:https://www.cnblogs.com/i201102053/p/10637204.html
Copyright © 2011-2022 走看看