重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

python基本函数,Python基本函数无返回值有哪些

Python中的常用内置函数有哪些呢?

abs() divmod() input() open() staticmethod()

创新互联公司专注为客户提供全方位的互联网综合服务,包含不限于网站设计、成都网站设计、新华网络推广、小程序开发、新华网络营销、新华企业策划、新华品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联公司为所有大学生创业者提供新华建站搭建服务,24小时服务热线:18980820575,官方网址:www.cdcxhl.com

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() reverse() zip()

compile() hasattr() memoryview() round() __import__()

complex() hash() min() set()

delattr() help() next() setattr()

dict() hex() object() slice()

dir() id() oct() sorted()

Python字典中几个常用函数总结

1、get() 返回指定键的值,如果值不在字典中返回default值。

语法:dict.get(key,default=None)

参数:

key 字典中要查找的键。

default 如果指定键的值不存在时,返回该默认值值。

例:

dict={'Name':'alex','Age':21}

print("Name is:%s"% dict.get('Name')+"\n"+ "Age is:%d"% dict.get('Age'))

显示结果为:

Name is:alex

Age is:21

2、update() 将一个字典中的值更新到另一个字典中。

语法:dict.update(dict2)

参数:

dict2 添加到指定字典dict里的字典。

例:

dict={'Name':'alex','Age':21}

dict2={'Sex':'female'}

dict.update(dict2)

print("Value is %s" % dict)

显示结果为:

Value is {'Name': 'alex', 'Age': 21, 'Sex': 'female'}

python常用函数包有哪些?

一些python常用函数包:

1、Urllib3

Urllib3是一个 Python 的 HTTP 客户端,它拥有 Python 标准库中缺少的许多功能:

线程安全

连接池

客户端 SSL/TLS 验证

使用分段编码上传文件

用来重试请求和处理 HTTP 重定向的助手

支持 gzip 和 deflate 编码

HTTP 和 SOCKS 的代理支持

2、Six

six 是一个是 Python 2 和 3 的兼容性库。这个项目旨在支持可同时运行在 Python 2 和 3 上的代码库。它提供了许多可简化 Python 2 和 3 之间语法差异的函数。

3、botocore、boto3、s3transfer、awscli

Botocore是 AWS 的底层接口。Botocore是 Boto3 库(#22)的基础,后者让你可以使用 Amazon S3 和 Amazon EC2 一类的服务。Botocore 还是 AWS-CLI 的基础,后者为 AWS 提供统一的命令行界面。

S3transfer(#7)是用于管理 Amazon S3 传输的 Python 库。它正在积极开发中,其介绍页面不推荐人们现在使用,或者至少等版本固定下来再用,因为其 API 可能发生变化,在次要版本之间都可能更改。Boto3、AWS-CLI和其他许多项目都依赖s3transfer。

4、Pip

pip是“Pip Installs Packages”的首字母递归缩写。

pip很容易使用。要安装一个包只需pip install package name即可,而删除包只需pip uninstall package name即可。

最大优点之一是它可以获取包列表,通常以requirements.txt文件的形式获取。该文件能选择包含所需版本的详细规范。大多数 Python 项目都包含这样的文件。

如果结合使用pip与virtualenv(列表中的 #57),就可以创建可预测的隔离环境,同时不会干扰底层系统,反之亦然。

5、Python-dateutil

python-dateutil模块提供了对标准datetime模块的强大扩展。我的经验是,常规的Python datetime缺少哪些功能,python-dateutil就能补足那一块。

6、Requests

Requests建立在我们的 #1 库——urllib3基础上。它让 Web 请求变得非常简单。相比urllib3来说,很多人更喜欢这个包。而且使用它的最终用户可能也比urllib3更多。后者更偏底层,并且考虑到它对内部的控制级别,它一般是作为其他项目的依赖项。

7、Certifi

近年来,几乎所有网站都转向 SSL,你可以通过地址栏中的小锁符号来识别它。加了小锁意味着与该站点的通信是安全和加密的,能防止窃听行为。

8、Idna

根据其 PyPI 页面,idna提供了“对 RFC5891 中指定的应用程序中国际化域名(IDNA)协议的支持。”

IDNA的核心是两个函数:ToASCII和ToUnicode。ToASCII会将国际 Unicode 域转换为 ASCII 字符串。ToUnicode则逆转该过程。在IDNA包中,这些函数称为idna.encode()和idna.decode()

9、PyYAML

YAML是一种数据序列化格式。它的设计宗旨是让人类和计算机都能很容易地阅读代码——人类很容易读写它的内容,计算机也可以解析它。

PyYAML是 Python 的YAML解析器和发射器,这意味着它可以读写YAML。它会把任何 Python 对象写成YAML:列表、字典,甚至是类实例都包括在内。

10、Pyasn1

像上面的IDNA一样,这个项目也非常有用:

ASN.1 类型和 DER/BER/CER 编码(X.208)的纯 Python 实现

所幸这个已有数十年历史的标准有很多信息可用。ASN.1是 Abstract Syntax Notation One 的缩写,它就像是数据序列化的教父。它来自电信行业。也许你知道协议缓冲区或 Apache Thrift?这就是它们的 1984 年版本。

11、Docutils

Docutils是一个模块化系统,用来将纯文本文档处理为很多有用的格式,例如 HTML、XML 和 LaTeX 等。Docutils能读取reStructuredText格式的纯文本文档,这种格式是类似于 MarkDown 的易读标记语法。

12、Chardet

你可以用chardet模块来检测文件或数据流的字符集。比如说,需要分析大量随机文本时,这会很有用。但你也可以在处理远程下载的数据,但不知道用的是什么字符集时使用它。

13、RSA

rsa包是一个纯 Python 的 RSA 实现。它支持:

加密和解密

签名和验证签名

根据 PKCS#1 1.5 版生成密钥

它既可以用作 Python 库,也能在命令行中使用。

14、Jmespath

JMESPath,发音为“James path”,使 Python 中的 JSON 更容易使用。它允许你声明性地指定如何从 JSON 文档中提取元素。

15、Setuptools

它是用于创建 Python 包的工具。不过,其文档很糟糕。它没有清晰描述它的用途,并且文档中包含无效链接。最好的信息源是这个站点,特别是这个创建 Python 包的指南。

16、Pytz

像dateutils一样,这个库可帮助你处理日期和时间。有时候,时区处理起来可能很麻烦。幸好有这样的包,可以让事情变得简单些。

17、Futures

从 Python 3.2 开始,python 提供current.futures模块,可帮助你实现异步执行。futures 包是该库适用于 Python 2 的 backport。它不适用于 Python3 用户,因为 Python 3 原生提供了该模块。

18、Colorama

使用 Colorama,你可以为终端添加一些颜色:

更多Python知识请关注Python自学网

Python的函数都有哪些

【常见的内置函数】

1、enumerate(iterable,start=0)

是python的内置函数,是枚举、列举的意思,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。

2、zip(*iterables,strict=False)

用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用*号操作符,可以将元组解压为列表。

3、filter(function,iterable)

filter是将一个序列进行过滤,返回迭代器的对象,去除不满足条件的序列。

4、isinstance(object,classinfo)

是用来判断某一个变量或者是对象是不是属于某种类型的一个函数,如果参数object是classinfo的实例,或者object是classinfo类的子类的一个实例,

返回True。如果object不是一个给定类型的的对象, 则返回结果总是False

5、eval(expression[,globals[,locals]])

用来将字符串str当成有效的表达式来求值并返回计算结果,表达式解析参数expression并作为Python表达式进行求值(从技术上说是一个条件列表),采用globals和locals字典作为全局和局部命名空间。

【常用的句式】

1、format字符串格式化

format把字符串当成一个模板,通过传入的参数进行格式化,非常实用且强大。

2、连接字符串

常使用+连接两个字符串。

3、if...else条件语句

Python条件语句是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。其中if...else语句用来执行需要判断的情形。

4、for...in、while循环语句

循环语句就是遍历一个序列,循环去执行某个操作,Python中的循环语句有for和while。

5、import导入其他脚本的功能

有时需要使用另一个python文件中的脚本,这其实很简单,就像使用import关键字导入任何模块一样。

python 常用的系统函数有哪些

1.常用内置函数:(不用import就可以直接使用)

help(obj) 在线帮助, obj可是任何类型

callable(obj) 查看一个obj是不是可以像函数一样调用

repr(obj) 得到obj的表示字符串,可以利用这个字符串eval重建该对象的一个拷贝

eval_r(str) 表示合法的python表达式,返回这个表达式

dir(obj) 查看obj的name space中可见的name

hasattr(obj,name) 查看一个obj的name space中是否有name

getattr(obj,name) 得到一个obj的name space中的一个name

setattr(obj,name,value) 为一个obj的name space中的一个name指向vale这个object

delattr(obj,name) 从obj的name space中删除一个name

vars(obj) 返回一个object的name space。用dictionary表示

locals() 返回一个局部name space,用dictionary表示

globals() 返回一个全局name space,用dictionary表示

type(obj) 查看一个obj的类型

isinstance(obj,cls) 查看obj是不是cls的instance

issubclass(subcls,supcls) 查看subcls是不是supcls的子类

类型转换函数

chr(i) 把一个ASCII数值,变成字符

ord(i) 把一个字符或者unicode字符,变成ASCII数值

oct(x) 把整数x变成八进制表示的字符串

hex(x) 把整数x变成十六进制表示的字符串

str(obj) 得到obj的字符串描述

list(seq) 把一个sequence转换成一个list

tuple(seq) 把一个sequence转换成一个tuple

dict(),dict(list) 转换成一个dictionary

int(x) 转换成一个integer

long(x) 转换成一个long interger

float(x) 转换成一个浮点数

complex(x) 转换成复数

max(...) 求最大值

min(...) 求最小值

用于执行程序的内置函数

complie 如果一段代码经常要使用,那么先编译,再运行会更快。

2.和操作系统相关的调用

系统相关的信息模块 import sys

sys.argv是一个list,包含所有的命令行参数.

sys.stdout sys.stdin sys.stderr 分别表示标准输入输出,错误输出的文件对象.

sys.stdin.readline() 从标准输入读一行 sys.stdout.write("a") 屏幕输出a

sys.exit(exit_code) 退出程序

sys.modules 是一个dictionary,表示系统中所有可用的module

sys.platform 得到运行的操作系统环境

sys.path 是一个list,指明所有查找module,package的路径.

操作系统相关的调用和操作 import os

os.environ 一个dictionary 包含环境变量的映射关系 os.environ["HOME"] 可以得到环境变量HOME的值

os.chdir(dir) 改变当前目录 os.chdir('d:\\outlook') 注意windows下用到转义

os.getcwd() 得到当前目录

os.getegid() 得到有效组id os.getgid() 得到组id

os.getuid() 得到用户id os.geteuid() 得到有效用户id

os.setegid os.setegid() os.seteuid() os.setuid()

os.getgruops() 得到用户组名称列表

os.getlogin() 得到用户登录名称

os.getenv 得到环境变量

os.putenv 设置环境变量

os.umask 设置umask

os.system(cmd) 利用系统调用,运行cmd命令

操作举例:

os.mkdir('/tmp/xx') os.system("echo 'hello' /tmp/xx/a.txt") os.listdir('/tmp/xx')

os.rename('/tmp/xx/a.txt','/tmp/xx/b.txt') os.remove('/tmp/xx/b.txt') os.rmdir('/tmp/xx')

用python编写一个简单的shell

#!/usr/bin/python

import os, sys

cmd = sys.stdin.readline()

while cmd:

os.system(cmd)

cmd = sys.stdin.readline()

用os.path编写平台无关的程序

os.path.abspath("1.txt") == os.path.join(os.getcwd(), "1.txt")

os.path.split(os.getcwd()) 用于分开一个目录名称中的目录部分和文件名称部分。

os.path.join(os.getcwd(), os.pardir, 'a', 'a.doc') 全成路径名称.

os.pardir 表示当前平台下上一级目录的字符 ..

os.path.getctime("/root/1.txt") 返回1.txt的ctime(创建时间)时间戳

os.path.exists(os.getcwd()) 判断文件是否存在

os.path.expanduser('~/dir') 把~扩展成用户根目录

os.path.expandvars('$PATH') 扩展环境变量PATH

os.path.isfile(os.getcwd()) 判断是否是文件名,1是0否

os.path.isdir('c:\Python26\temp') 判断是否是目录,1是0否

os.path.islink('/home/huaying/111.sql') 是否是符号连接 windows下不可用

os.path.ismout(os.getcwd()) 是否是文件系统安装点 windows下不可用

os.path.samefile(os.getcwd(), '/home/huaying') 看看两个文件名是不是指的是同一个文件

os.path.walk('/home/huaying', test_fun, "a.c")

遍历/home/huaying下所有子目录包括本目录,对于每个目录都会调用函数test_fun.

例:在某个目录中,和他所有的子目录中查找名称是a.c的文件或目录。

def test_fun(filename, dirname, names): //filename即是walk中的a.c dirname是访问的目录名称

if filename in names: //names是一个list,包含dirname目录下的所有内容

print os.path.join(dirname, filename)

os.path.walk('/home/huaying', test_fun, "a.c")

文件操作

打开文件

f = open("filename", "r") r只读 w写 rw读写 rb读二进制 wb写二进制 w+写追加

读写文件

f.write("a") f.write(str) 写一字符串 f.writeline() f.readlines() 与下read类同

f.read() 全读出来 f.read(size) 表示从文件中读取size个字符

f.readline() 读一行,到文件结尾,返回空串. f.readlines() 读取全部,返回一个list. list每个元素表示一行,包含"\n"\

f.tell() 返回当前文件读取位置

f.seek(off, where) 定位文件读写位置. off表示偏移量,正数向文件尾移动,负数表示向开头移动。

where为0表示从开始算起,1表示从当前位置算,2表示从结尾算.

f.flush() 刷新缓存

关闭文件

f.close()

regular expression 正则表达式 import re

简单的regexp

p = re.compile("abc") if p.match("abc") : print "match"

上例中首先生成一个pattern(模式),如果和某个字符串匹配,就返回一个match object

除某些特殊字符metacharacter元字符,大多数字符都和自身匹配。

这些特殊字符是 。^ $ * + ? { [ ] \ | ( )

字符集合(用[]表示)

列出字符,如[abc]表示匹配a或b或c,大多数metacharacter在[]中只表示和本身匹配。例:

a = ".^$*+?{\\|()" 大多数metachar在[]中都和本身匹配,但"^[]\"不同

p = re.compile("["+a+"]")

for i in a:

if p.match(i):

print "[%s] is match" %i

else:

print "[%s] is not match" %i

在[]中包含[]本身,表示"["或者"]"匹配.用

表示.

^出现在[]的开头,表示取反.[^abc]表示除了a,b,c之外的所有字符。^没有出现在开头,即于身身匹配。

-可表示范围.[a-zA-Z]匹配任何一个英文字母。[0-9]匹配任何数字。

\在[]中的妙用。

\d [0-9]

\D [^0-9]

\s [ \t\n\r\f\v]

\S [^ \t\n\r\f\v]

\w [a-zA-Z0-9_]

\W [^a-zA-Z0-9_]

\t 表示和tab匹配, 其他的都和字符串的表示法一致

\x20 表示和十六进制ascii 0x20匹配

有了\,可以在[]中表示任何字符。注:单独的一个"."如果没有出现[]中,表示出了换行\n以外的匹配任何字符,类似[^\n].

regexp的重复

{m,n}表示出现m个以上(含m个),n个以下(含n个). 如ab{1,3}c和abc,abbc,abbbc匹配,不会与ac,abbbc匹配。

m是下界,n是上界。m省略表下界是0,n省略,表上界无限大。

*表示{,} +表示{1,} ?表示{0,1}

最大匹配和最小匹配 python都是最大匹配,如果要最小匹配,在*,+,?,{m,n}后面加一个?.

match object的end可以得到匹配的最后一个字符的位置。

re.compile("a*").match('aaaa').end() 4 最大匹配

re.compile("a*?").match('aaaa').end() 0 最小匹配

使用原始字符串

字符串表示方法中用\\表示字符\.大量使用影响可读性。

解决方法:在字符串前面加一个r表示raw格式。

a = r"\a" print a 结果是\a

a = r"\"a" print a 结果是\"a

使用re模块

先用re.compile得到一个RegexObject 表示一个regexp

后用pattern的match,search的方法,得到MatchObject

再用match object得到匹配的位置,匹配的字符串等信息

RegxObject常用函数:

re.compile("a").match("abab") 如果abab的开头和re.compile("a")匹配,得到MatchObject

_sre.SRE_Match object at 0x81d43c8

print re.compile("a").match("bbab")

None 注:从str的开头开始匹配

re.compile("a").search("abab") 在abab中搜索第一个和re_obj匹配的部分

_sre.SRE_Match object at 0x81d43c8

print re.compile("a").search("bbab")

_sre.SRE_Match object at 0x8184e18 和match()不同,不必从开头匹配

re_obj.findall(str) 返回str中搜索所有和re_obj匹配的部分.

返回一个tuple,其中元素是匹配的字符串.

MatchObject的常用函数

m.start() 返回起始位置,m.end()返回结束位置(不包含该位置的字符).

m.span() 返回一个tuple表示(m.start(), m.end())

m.pos(), m.endpos(), m.re(), m.string()

m.re().search(m.string(), m.pos(), m.endpos()) 会得到m本身

m.finditer()可以返回一个iterator,用来遍历所有找到的MatchObject.

for m in re.compile("[ab]").finditer("tatbxaxb"):

print m.span()

高级regexp

| 表示联合多个regexp. A B两个regexp,A|B表示和A匹配或者跟B匹配.

^ 表示只匹配一行的开始行首,^只有在开头才有此特殊意义。

$ 表示只匹配一行的结尾

\A 表示只匹配第一行字符串的开头 ^匹配每一行的行首

\Z 表示只匹配行一行字符串的结尾 $匹配第一行的行尾

\b 只匹配词的边界 例:\binfo\b 只会匹配"info" 不会匹配information

\B 表示匹配非单词边界

示例如下:

print re.compile(r"\binfo\b").match("info ") #使用raw格式 \b表示单词边界

_sre.SRE_Match object at 0x817aa98

print re.compile("\binfo\b").match("info ") #没有使用raw \b表示退格符号

None

print re.compile("\binfo\b").match("\binfo\b ")

_sre.SRE_Match object at 0x8174948

分组(Group) 示例:re.compile("(a(b)c)d").match("abcd").groups() ('abc', 'b')

#!/usr/local/bin/python

import re

x = """

name: Charles

Address: BUPT

name: Ann

Address: BUPT

"""

#p = re.compile(r"^name:(.*)\n^Address:(.*)\n", re.M)

p = re.compile(r"^name:(?P.*)\n^Address:(?P.*)\n", re.M)

for m in p.finditer(x):

print m.span()

print "here is your friends list"

print "%s, %s"%m.groups()

Compile Flag

用re.compile得到RegxObject时,可以有一些flag用来调整RegxObject的详细特征.

DOTALL, S 让.匹配任意字符,包括换行符\n

IGNORECASE, I 忽略大小写

LOCALES, L 让\w \W \b \B和当前的locale一致

MULTILINE, M 多行模式,只影响^和$(参见上例)

VERBOSE, X verbose模式


分享文章:python基本函数,Python基本函数无返回值有哪些
分享网址:http://cqcxhl.com/article/dsgisse.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP