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. [PIC32--IDE]Microchip PIC32开发环境的搭建

    问题描写叙述 PIC32是Microchip推出的32 bit MCU,其内核是MIPS架构的,MIPS也是属于RISC指令集的,好像ARM的指令集还在RISC指令集中做了一些扩充,而MIPS应当是更 ...

  2. iOS开发多线程篇 04 —线程间的通信

    iOS开发多线程篇—线程间的通信 一.简单说明 线程间通信:在1个进程中,线程往往不是孤立存在的,多个线程之间需要经常进行通信 线程间通信的体现 1个线程传递数据给另1个线程 在1个线程中执行完特定任 ...

  3. Apache伪静态Rewrite详解

    一.Rewrite规则简介:Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于 Perl语言.可基于服务器级的(httpd.conf)和目录级的 (.htaccess)两种方式.如果要 ...

  4. CMSGC造成内存碎片的解决方法

    我们知道,CMSGC在老生代回收时产生的内存碎片会导致老生代的利用率变低:或者可能在老生代总内存大小足够的情况下,却不能容纳新生代的晋升行为(由于没有连续的内存空间可用),导致触发FullGC.针对这 ...

  5. 广告过滤神器(ADMuncher)4.93

    Ad Muncher 介绍:        浏览网页时,冷不防地被网站播放的MIDI音乐声音吓一跳,或是因为弹出的广告窗口碍事,而影响你上网络的心情.Ad Muncher支持Netscape.Inte ...

  6. sqlmap里如何添加字典

    在sqlmap的目录下有那么一个目录.即"TXT"目录. 该目录下是放字典的. 我在日一个站的时候没有破解出表明.然后不小心下载到了数据库. sqlmap无法猜出表是啥.ps:ac ...

  7. spring-core依赖jar包

  8. uGUI Anchor

    Anchor定位:inspector面板的Rect Transform组件中PosX左边的方框图标就是设置锚点的,做界面自适应时可定位控件在视图中的位置,与NGUI类似.Anchor+Canvas的C ...

  9. ddd 架构设计——abp

    一.为什么要分层 分层架构是所有架构的鼻祖,分层的作用就是隔离,不过,我们有时候有个误解,就是把层和程序集对应起来,就比如简单三层架构中,在你的解决方案中,一般会有三个程序集项目:XXUI.dll.X ...

  10. 列出自己常用的jdk中的数据结构

    列出自己常用的jdk中的数据结构 解答:线性表,链表,哈希表是常用的数据结构.