Python------内置函数+内置变量+内置模块

1.内置函数

Python所有的内置函数

  Built-in Functions  
abs()divmod()input()open()staticmethod()
all()enumerate()int()ord()str()
any()eval()isinstance()pow()sum()
basestring()execfile()issubclass()print()super()
bin()file()iter()property()tuple()
bool()filter()len()range()type()
bytearray()float()list()raw_input()unichr()
callable()format()locals()reduce()unicode()
chr()frozenset()long()reload()vars()
classmethod()getattr()map()repr()xrange()
cmp()globals()max()reversed()zip()
compile()hasattr()memoryview()round()__import__()
complex()hash()min()set()apply()
delattr()help()next()setattr()buffer()
dict()hex()object()slice()coerce()
dir()id()oct()sorted()intern()

置方法 说明
__init__(self,...) 初始化对象,在创建新对象时调用
 __del__(self) 释放对象,在对象被删除之前调用
 __new__(cls,*args,**kwd) 实例的生成操作
 __str__(self) 在使用print语句时被调用
 __getitem__(self,key) 获取序列的索引key对应的值,等价于seq[key]
 __len__(self) 在调用内联函数len()时被调用
 __cmp__(stc,dst) 比较两个对象src和dst
 __getattr__(s,name) 获取属性的值
 __setattr__(s,name,value) 设置属性的值
 __delattr__(s,name) 删除name属性
 __getattribute__() __getattribute__()功能与__getattr__()类似
 __gt__(self,other) 判断self对象是否大于other对象
 __lt__(slef,other) 判断self对象是否小于other对象
 __ge__(slef,other) 判断self对象是否大于或者等于other对象
 __le__(slef,other) 判断self对象是否小于或者等于other对象
 __eq__(slef,other) 判断self对象是否等于other对象
 __call__(self,*args) 把实例对象作为函数调用

2.内置变量

vars()查看内置全局变量

以字典方式返回内置全局变量

  1. #!/usr/bin/env python
  2. # -*- coding:utf8 -*-
  3. print(vars())
  4. #输出
  5. # { '__builtins__': < module 'builtins' (built-in)>, '__spec__': None, '__package__': None, '__doc__': None, '__name__': '__main__', '__cached__': None, '__file__': 'H:/py/index.py', '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x000000AC32C66A58>}
__doc__ :获取文件的注释

__file__ 【重点】获取当前文件的路径

__file__ ,一般配合os模块的os.path.dirname(),os.path.basename() ,os.path.join() 模块函数来使用

  1. #!/usr/bin/env python
  2. # -*- coding:utf8 -*-
  3. import os
  4. a = __file__ # __file__全局变量获取当前文件路径
  5. print(a)
  6. b = os.path.dirname(a) #获取文件当前目录:注意:os.path.dirname()叠加一次向上找一次 如下
  7. print(b)
  8. b2 = os.path.dirname(b) #获取文件当前目录的上级目录,注意:os.path.dirname()叠加一次向上找一次
  9. print(b2)
  10. c = os.path.basename(a) #获取文件名称
  11. print(c)
  12. #输出
  13. # H:/py/lib/ska/mk.py
  14. # H:/py/lib/ska
  15. # H:/py/lib
  16. # mk.py
 用__file__获取模块路径,添加到解释器模块路径里
  1. #!/usr/bin/env python
  2. # -*- coding:utf8 -*-
  3. import sys
  4. import os
  5. a = __file__ # __file__全局变量获取当前文件路径
  6. print(a)
  7. b = os.path.dirname(a) #获取文件当前目录
  8. print(b)
  9. c = "lib" #自定义文件目录名称
  10. d = os.path.join(b,c) #将获取文件当前目录,与自定义文件目录名称,拼接成完整的路径
  11. print(d)
  12. print( "\n")
  13. sys.path.append(d) #将拼接好的路径,添加到解释器模块路径中
  14. for i in sys.path: #
  15. print(i)
  16. #输出
  17. # H:/py/index.py
  18. # H:/py
  19. # H:/py\lib
  20. #
  21. #
  22. # H:\py
  23. # C:\Users\admin\AppData\Local\Programs\Python\Python35\lib\site-packages\pip- 8.1.2-py3.5.egg
  24. # H:\py
  25. # C:\Users\admin\AppData\Local\Programs\Python\Python35\python35.zip
  26. # C:\Users\admin\AppData\Local\Programs\Python\Python35\DLLs
  27. # C:\Users\admin\AppData\Local\Programs\Python\Python35\lib
  28. # C:\Users\admin\AppData\Local\Programs\Python\Python35
  29. # C:\Users\admin\AppData\Local\Programs\Python\Python35\lib\site-packages
  30. # H:/py\lib
__package__ :获取导入文件的路径,多层目录以点分割,注意:对当前文件返回None

__cached__ :获取导入文件的缓存路径

__name__ 【重点】获取导入文件的路径加文件名称,路径以点分割,注意:获取当前文件返回__main__ 

__name__  全局变量写在入口文件里,只有执行入口文件时的返回值才是__main__  ,如果入口文件被导入到别的文件里,此时入口文件的__name__返回值就不在是__main__,而是如果文件的路径加入口文件名称,所以我们可以用__name__全局变量来防止别人盗链入口文件

__builtins__ 【重点】内置函数在这里面

3.内置模块

一:os模块,(文件和目录)用于提供系统级别的操作

二:sys模块:用于提供对解释器相关的操作

三:hashlib模块:用于加密相关的操作,代替了md5模块和sha模块,主要提供 SHA1, SHA224, SHA256, SHA384, SHA512 ,MD5 算法

四:shutil模块:高级的 文件、文件夹、压缩包 处理模块(递归,文件复制等)

五:configparser模块:用于对特定的配置进行操作,

六:logging: 用于便捷记录日志且线程安全的模块

七:time & datetime 模块:时间相关的操作,时间有三种表示方式:

八:random模块:随机数
九:json 和 pickle模块
十:shelve模块:一个简单的k,v将内存数据通过文件持久化的模块,可以持久化任何pickle可支持的python数据格式

  1. os.getcwd() 获取当前工作目录,即当前Python脚本工作的目录路径
  2. os.chdir( "dirname") 改变当前脚本工作目录;相当于shell下cd
  3. os.curdir 返回当前目录: ( '.')
  4. os.pardir 获取当前目录的父目录字符串名:( '..')
  5. os.makedirs( 'dirname1/dirname2') 可生成多层递归目录
  6. os.removedirs( 'dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
  7. os.mkdir( 'dirname') 生成单级目录;相当于shell中mkdir dirname
  8. os.rmdir( 'dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
  9. os.listdir( 'dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
  10. os.remove() 删除一个文件
  11. os.rename( "oldname", "newname") 重命名文件/目录
  12. os.stat( 'path/filename') 获取文件/目录信息
  13. os.sep 输出操作系统特定的路径分隔符,win下为 "\\",Linux下为 "/"
  14. os.linesep 输出当前平台使用的行终止符,win下为 "\t\n",Linux下为 "\n"
  15. os.pathsep 输出用于分割文件路径的字符串
  16. os.name 输出字符串指示当前使用平台。win-> 'nt'; Linux-> 'posix'
  17. os.system( "bashcommand") 运行shell命令,直接显示
  18. os.environ 获取系统环境变量
  19. os.path.abspath(path) 返回path规范化的绝对路径
  20. os.path.split(path) 将path分割成目录和文件名二元组返回
  21. os.path.dirname(path) 返回path的目录。其实就是os.path.split(path)的第一个元素
  22. os.path.basename(path) 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素
  23. os.path.exists(path) 如果path存在,返回True;如果path不存在,返回False
  24. os.path.isabs(path) 如果path是绝对路径,返回True
  25. os.path.isfile(path) 如果path是一个存在的文件,返回True。否则返回False
  26. os.path.isdir(path) 如果path是一个存在的目录,则返回True。否则返回False
  27. os.path.join(path1[, path2[,...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
  28. os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间
  29. os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
  30. 执行系统命令
  31. os.system

  1. sys.argv 命令行参数List,第一个元素是程序本身路径
  2. sys.exit(n) 退出程序,正常退出时exit( 0)
  3. sys.version 获取Python解释程序的版本信息
  4. sys.maxint 最大的Int值
  5. sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
  6. sys.platform 返回操作系统平台名称

[java]  view plain  copy
  1. <code class="language-java">#hashlib  
  2. hash = hashlib.md5()  
  3. hash.update(b'admin')  
  4. print(hash.hexdigest())</code>  
 
 
  1. print(time.time()) #返回当前系统时间戳
  2. print(time.ctime()) #输出Tue Jan 26 18: 23: 48 2016 ,当前系统时间
  1. print(time.strftime( "%Y-%m-%d %H:%M:%S",time.gmtime()) ) #将struct_time格式转成指定的字符串格式
  2. print(time.strptime( "2016-01-28", "%Y-%m-%d") ) #将字符串格式转换成struct_time格式
  1. current_time = datetime.datetime.now() #
  2. print(current_time) #输出 2016- 01- 26 19: 04: 30.335935
  3. print(current_time.timetuple()) #返回struct_time格式
  1. str_to_date = datetime.datetime.strptime( "21/11/06 16:30", "%d/%m/%y %H:%M") #将字符串转换成日期格式
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值