模块及其数据类型小结

Posted brace2011

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了模块及其数据类型小结相关的知识,希望对你有一定的参考价值。

1. 模块:
 模块即库,分为:标准库和非标准库;
 
 标准库就是不用安装,直接导入即可使用,反之就是需要安装的非标准库;
 
 
 导入模块先从当前目录导入,所以编写脚本文件名时不能和标准库名相同
 
 1>. sys模块:
 import sys     
 
 1.1  sys.path   #打印环境变量,模块存储路劲,只有存在这些目录下才能导入模块;
  [‘D:\Python3\python_project\Project_1\Day-05-27‘, ‘D:\Python3\python_project\Project_1‘, ‘D:\Python3\python_project\Project_1\venv\Scripts\python36.zip‘, ‘C:\Users\brace.li\AppData\Local\Programs\Python\Python36-32\DLLs‘, ‘C:\Users\brace.li\AppData\Local\Programs\Python\Python36-32\lib‘, ‘C:\Users\brace.li\AppData\Local\Programs\Python\Python36-32‘, ‘D:\Python3\python_project\Project_1\venv‘, ‘D:\Python3\python_project\Project_1\venv\lib\site-packages‘, ‘D:\Python3\python_project\Project_1\venv\lib\site-packages\setuptools-39.0.1-py3.6.egg‘, ‘D:\Python3\python_project\Project_1\venv\lib\site-packages\pip-9.0.3-py3.6.egg‘, ‘C:\Program Files\JetBrains\PyCharm 2018.1.3\helpers\pycharm_matplotlib_backend‘]
  D:\Python3\python_project\Project_1\venv\lib\site-packages‘     #第三方库存放的位置
  C:\Users\brace.li\AppData\Local\Programs\Python\Python36-32\lib   #标准库存放的位置
 
 1.2  sys.argv   #读取脚本的相对路径 
 
  print(sys.argv)
 
  python sys_test.py
  输出:
  [‘sys_test.py‘]
  
  print(sys.argv)
  print(sys.argv[2])
  
  python sys_test.py 1 2 3 4
  输出:
  [‘sys_test.py‘, ‘1‘, ‘2‘, ‘3‘, ‘4‘]
  2
  
 2>.  os模块:
  2.1 os.system("df -h")       #执行系统相关的命令;
    cmd_res = os.system("df -h")   #执行命令,不保存结果;
    cmd_res = os.popen("df -h").read()  #执行命令,保存结果
  2.2 os.mkdir("new_dir")       #创建目录new_dir
 
 3>. 自定义模块:
  编写好一个脚本后,存放在当前目录,就可以直接用
  import 脚本名
  来导入自定义模块;
  
2. .pyc是什么?
 pyc文件就是 py程序编译后得到的字节码文件 (py->pyc),
 python为了提高运行效率也会进行编译,有时候编译出pyc文件后,删除py文件也不会出错
 pyc文件的产生,
 假如有一个逻辑文件abcd.py,里面有很多函数A,B,C,D,
 这个时候,如果你有一个test脚本去导入了abcd.py,只要你运行test脚本,
 在adcd.py目录下就会生成一个abcd.pyc文件,而不管你是否需要调用A,B,C,D函数 
  
  
3. 数字类型
 3.1 数字:
  1> 整数int:
   在32位机器上,整数的位数为32位;
   在64位机器上,整数的位数为64位;
  
   python3.x中没有长整型。统统都是int
  
  2> float浮点数:小数,用来出来实数,即带有小数点的数字; 
  
4. 布尔值:
 真或假
 1或0
 >>> a = 0
 >>> if a:print(‘a‘)
 ...
 >>> a = 1
 >>> if a:print(‘a‘)
 ...
 a
 
5. 三元运算:
 >>> a,b,c = 1,2,3
 >>> d = a if a>b else c
 >>> d
 3
 >>> d = a if a<b else c
 >>> d
 1
 
6. bytes类型:   二进制,其和字符串完全不一样 
 python3.x:   有严格的区分bytes与string,其不能相互操作;
 
 string ==encode编码==> bytes
 bytes  ==decode解码==> string
 
 网络传输数据,必须以二进制的方式进行传输。
 >>> "hello".encode("utf-8")   #utf-8缺省,python3默认是utf-8
 b‘hello‘
 >>> b‘hello‘.decode("utf-8")
 ‘hello‘
  
 >>> msg = "我爱北京"
 >>> print(msg.encode("utf-8"))
 b‘xe6x88x91xe7x88xb1xe5x8cx97xe4xbaxac‘
 >>> b‘xe6x88x91xe7x88xb1xe5x8cx97xe4xbaxac‘.decode("utf-8")
 ‘我爱北京‘
 >>>































































































以上是关于模块及其数据类型小结的主要内容,如果未能解决你的问题,请参考以下文章

数据结构:第二章学习小结

Redis这五大数据类型你做过了解吗

Redis这五大数据类型你做过了解吗

MySQL数据类型及字段小结

js数据类型检测小结

PHP 八种基本的数据类型小结