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       返回操作系统平台名称

  1. #hashlib
  2. hash = hashlib.md5()
  3. hash.update(b'admin')
  4. print(hash.hexdigest())
  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") #将字符串转换成日期格式
  2. new_date = datetime.datetime.now() + datetime.timedelta(days=10) #比现在加10天

Python每日一练------内置函数+内置变量+内置模块的更多相关文章

  1. [python每日一练]--0012:敏感词过滤 type2

    题目链接:https://github.com/Show-Me-the-Code/show-me-the-code代码github链接:https://github.com/wjsaya/python ...

  2. Python 每日一练 | Flask 实现半成品留言板

    留言板Flask实现 引言 看了几天网上的代码,终于写出来一个半成品的Flask的留言板项目,为什么说是半成品呢?因为没能实现留言板那种及时评论刷新的效果,可能还是在重定向上有问题 或者渲染写的存在问 ...

  3. C++ : 内联函数和引用变量

    一.内联函数 内联函数和普通函数的使用方法没有本质区别,我们来看一个例子,下面展示了内联函数的使用方法: #include <iostream> using namespace std; ...

  4. python每日一练:0007题

    第 0007 题: 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. # -*- coding:utf-8 -*- import os def count ...

  5. Python 每日一练(5)

    引言 Python每日一练又开始啦,今天的专题和Excel有关,主要是实现将txt文本中数据写入到Excel中,说来也巧,今天刚好学校要更新各团支部的人员信息,就借此直接把事情做了 主要对于三种数据类 ...

  6. Python 每日一练(4)

    引言 今天继续是python每日一练的几个专题,主要涵盖简单的敏感词识别以及图片爬虫 敏感词识别 这个敏感词的识别写的感觉比较简单,总的概括之后感觉功能可以简略成if filter_words in ...

  7. Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词

    #coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...

  8. Python学习笔记014——迭代工具函数 内置函数enumerate()

    1 描述 enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中. 2 语法 enumerate(sequ ...

  9. python-面向对象速查表-内置方法-内置函数-内置属性(只整理了部分内容)

    今日临时总结的内容,可能还有些不正确的地方,初步当做个速查表吧. 类的内置函数(继承object的,自己重写) 内置函数 执行时机 注意点 调用案例 __init__ 实例化对象时 不允许写返回值(r ...

随机推荐

  1. C++语言基础(23)-拷贝构造函数

    当以拷贝的方式初始化一个对象时,会调用一个特殊的构造函数,就是拷贝构造函数(Copy Constructor). 例如: #include <iostream> #include < ...

  2. onActivityResult 通过case对不同情况进行处理

    @Overridepublic void onActivityResult(int requestCode, int resultCode, Intent data) { switch (result ...

  3. dirname(__FILE__) 的使用总结 1(转)

    dirname(__FILE__) php中定义了一个很有用的常数,即 __file__ 这个内定常数是当前php程序的就是完整路径(路径+文件名). 即使这个文件被其他文件引用(include或re ...

  4. linux TZ格式

    man tzset可以很清楚了解时区设置格式,共3种: The first format is used when there is no daylight saving time in the lo ...

  5. java 检测字符串中文乱码

    1.检测是否为乱码 public static boolean isMessyCode(String strName) { Pattern p = Pattern.compile("\\s* ...

  6. Tuning 04 Sizing the Buffer Cache

    Buffer Cache 特性 The buffer cache holds copies of the data blocks from the data files. Because the bu ...

  7. C++ Scoket的升级版(多态的运用)

    //Socket报文发送c++升级版 #define _CRT_SECURE_NO_WARNINGS #include<iostream> using namespace std; #in ...

  8. SpringBoot启动过程原理

    最近这两年springboot突然火起来了,那么我们就来看看springboot的运行原理. 一.springboot的三种启动方式: 1.运行带有main方法的2.通过命令 Java -jar命令3 ...

  9. linux下的线程池

    什么时候需要创建线程池呢?简单的说,如果一个应用需要频繁的创建和销毁线程,而任务执行的时间又非常短,这样线程创建和销毁的带来的开销就不容忽视,这时也是线程池该出场的机会了.如果线程创建和销毁时间相比任 ...

  10. [转]NBehave行为驱动测试关于story和scenarios

    原文: Behavior-Driven Development with NBehave 这里模拟了一个"银行账户"的类 一个余额属性,一个存款方法,一个撤销账户的方法,一个转账的 ...