Python每日一练------内置函数+内置变量+内置模块

来源:互联网 发布:网站运营数据 编辑:程序博客网 时间:2024/06/05 04:50

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()查看内置全局变量

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

#!/usr/bin/env python# -*- coding:utf8 -*-print(vars())#输出# {'__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() 模块函数来使用

#!/usr/bin/env python# -*- coding:utf8 -*-import osa = __file__    # __file__全局变量获取当前文件路径print(a)b = os.path.dirname(a) #获取文件当前目录:注意:os.path.dirname()叠加一次向上找一次 如下print(b)b2 = os.path.dirname(b) #获取文件当前目录的上级目录,注意:os.path.dirname()叠加一次向上找一次print(b2)c = os.path.basename(a) #获取文件名称print(c)#输出# H:/py/lib/ska/mk.py# H:/py/lib/ska# H:/py/lib# mk.py
 用__file__获取模块路径,添加到解释器模块路径里
#!/usr/bin/env python# -*- coding:utf8 -*-import sysimport osa = __file__    # __file__全局变量获取当前文件路径print(a)b = os.path.dirname(a) #获取文件当前目录print(b)c = "lib" #自定义文件目录名称d = os.path.join(b,c) #将获取文件当前目录,与自定义文件目录名称,拼接成完整的路径print(d)print("\n")sys.path.append(d) #将拼接好的路径,添加到解释器模块路径中for i in sys.path:  #    print(i)#输出# H:/py/index.py# H:/py# H:/py\lib### H:\py# C:\Users\admin\AppData\Local\Programs\Python\Python35\lib\site-packages\pip-8.1.2-py3.5.egg# H:\py# C:\Users\admin\AppData\Local\Programs\Python\Python35\python35.zip# C:\Users\admin\AppData\Local\Programs\Python\Python35\DLLs# C:\Users\admin\AppData\Local\Programs\Python\Python35\lib# C:\Users\admin\AppData\Local\Programs\Python\Python35# C:\Users\admin\AppData\Local\Programs\Python\Python35\lib\site-packages# 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数据格式

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

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

#hashlibhash = hashlib.md5()hash.update(b'admin')print(hash.hexdigest())

print(time.time()) #返回当前系统时间戳print(time.ctime()) #输出Tue Jan 26 18:23:48 2016 ,当前系统时间
print(time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime()) ) #将struct_time格式转成指定的字符串格式print(time.strptime("2016-01-28","%Y-%m-%d") ) #将字符串格式转换成struct_time格式
current_time = datetime.datetime.now() #print(current_time) #输出2016-01-26 19:04:30.335935print(current_time.timetuple()) #返回struct_time格式
str_to_date = datetime.datetime.strptime("21/11/06 16:30", "%d/%m/%y %H:%M") #将字符串转换成日期格式new_date = datetime.datetime.now() + datetime.timedelta(days=10) #比现在加10天






1 0
原创粉丝点击