在写python程序时,常能用到一些函数和方法,总结一下,保存起来,方便查询。
成都创新互联于2013年创立,先为城厢等服务建站,城厢等地企业,进行企业商务咨询服务。为城厢企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
一、内置函数
# abs()获取数字绝对值
# chr(i)数字转换为字符类型
# divmod() 获取两个数值的商和余数
# enumerate() 将可遍历序列组合为索引序列
# float()转换为浮点数
# format() 格式化字符串
# int()转换为整数
# input() 接受用户输入内容
# len() 计算元素个数
# max() 返回最大值
# min() 返回最小值
# math.ceil() 返回指定数值的上舍整数
# open()打开文件并返回文件对象
# pow() 幂运算
# print()打印输出
# range() 生成器
# reversed()反转所有元素
# round()四舍五入求值
# sorted()对可迭代对象进行排序
# str() 转换为字符串
# sum() 求和
# set() 创建集合
# tuple() 将序列转换为元组
# zip()将可迭代对象打包成元组
二、方法
# append() 添加列表元素
# capitalize()首字母转换为大写
# count()字符出现次数
# close() 关闭文件
# decode() 解码字符串
# dict.keys() 获取字典所有的键
# find()字符串首次出现的索引
# f.read() 读取文件内容
# dict.update()更新字典
# dict.items() 获取字典键/值对
# dict.get() 返回指定键的值
# encode() 编码字符串
# list.sort() 排序列表元素
# index() 元素首次出现的索引
# isdigit() 判断字符串是否只由数字组成
# isupper() 是否所有字母都为大写
# isnum() 判断字符串是否由字母和数字组成
# islower() 是否所有字母都为小写
# isdecimal() 检查字符串是否只包含十进制字符
# isalpha() 检测字符串是否为纯字母
# random.shuffle()随机排序
# random.sample()返回无重复随机数列表
# random.choice() 返回一个随机元素
# random.randint() 生成指定范围的随机整数
# random.randrange() 生成指定范围的指定递增基数随机整数
# pop() 删除列表中的元素
# remove()删除列表中的指定元素
# strip()去除空格
# lstrip()去除左侧空格
# rstrip() 去除右侧空格
# readline() 读取单行内容
# root.after() Tkinter中等待一段时间后再执行命令
# str.isnumeric() 验证字符串是否为数字(适用于Unicode)
# split()分割字符串
# ord() 将字符转换为整数
# replace() 字符串替换
# ljust() 左对齐填充
# rjust() 左对齐填充
# readlines() 读取所有行内容
# datetime.datetime.now() 返回指定时区的本地日期时间
# datetime.datetime.today() 获取当前本地日期的date对象
# datetime.utcnow() 返回当前UTC时间的datetime对象
# time.strptime()把时间字符串解析为元组
# time.time()返回当前时间的时间戳
# time.sleep()暂停指定秒数
# time.strftime() 返回指定格式的日期字符串
# time.mktime() 接收时间元组并返回时间戳
# os.getcwd() 获取当前工作目录
# os.listdir() 获取指定路径下的目录和文件列表
# os.makedirs() 递归创建目录
# os.rename() 重命名目录或文件
# os.path.exists() 判断路径是否存在
# upper() 全部转换为大写字母
# lower() 全部转换为小写字母
# sys.stdout.write() 标准输出打印
# sys.stdout.flush()刷新输出
# shutil.copy() 复制单个文件到另一文件或目录
# write() 写入文件内容
# winsound.Beep() 打开电脑扬声器
# zfill() 在字符串前面填充0
三、循环语句
# break终止当前循环
# continue 终止本循环进入下一次循环
# with open() as file 以with语句打开文件(数据保存)
四、转义字符
\ 行尾续行符
\' 单引号
\'' 双引号
\a 响铃
\e 转义
\n 换行
\t 横向制表符
\f 换页
\xyy 十六进制yy代表的字符
\\反斜杠符号
\b 退格
\000 空
\v 纵向制表符
\r 回车
\0yy 八进制yy代表的字符
\other 其他的字符以普通格式输出
1.什么是字符串
序列,有序,不可变的
用单引号或者双引号任意字符集,
2,字符串中的字符
普通字符:'23', 'sdfsdfsd', '+ + (**^%$#@@', '发技术规范举案说法'
'''
python中的字符采用的是unicode编码
1.什么是编码
就是数字和字符的一一对应的,其中字符对应的数字就是字符的编码
a - 97
b - 98
2.编码方式
ASCII码表 :针对数字字符,字母字符(26个小写字母和26个大写字母),一些英文中对应的符号进行编码
小写字母要大于大写字母的编码值,采用一个字节对字符进行编码,只能对128个字符进行编码
Unicode码 :Unicode码包含了ASCII码表,同时能够对世界上所有语言对应的符号进行编码,
采用两个字节进行编码,能够编码65536个字符
3.两个函数
chr(编码值)--将字符编码值转化为字符
ord(字符)-- 获取字符对应的编码值
中文编码范围 0x4e00~~~~~0x9fa5
一旦一个字符串确定了,那么字符串中每个字符的位置就确定了,而且每个字符会对应一个表示其位置和顺序的下标值
1,下标(索引)
字符串中的每一个字符都有一个下标,代表在字符串中的位置
下标范围是:0到字符串长度---1 0(代表第一个字符的位置)
-1 ~ 字符串长度 -1(代表字符串中最后一个字符的位置)
'abc' # ''
获取单个字符
语法:字符串[下标]--获取字符串中指定下标对应的字符
说明 字符串--可以是字符串常量,也可以是字符串变量
[]---固定写法
下标--字符的下标,不能越界。
获取部分字符
语法:字符串[开始下标:结束下标:步长]
步长-- 一个整数
功能: 从开始下标获取到结束下标前位置,每次下标值增加步长,结果是字符串
注意:当步长是整数,开始下标对应的字符要在结束下标的前面
当步长是负数,开始下标对应的字符要在结束下标的后面
方法2:字符串[开始下表:结束下标](相当于步长是一)
获取部分字符,省略下标
获取部分字符的时候开始下标和结束下标都可以省略
a.开始下标省略
字符串[:结束下标:步长] 或者字符串[:结束下表]
字符串是正数:从字符串开头开始往后获取
字符串是负数:从字符串结尾开始往前获取
结束下标省略
字符串[开始下标::步长]
步长是正数,从开始下标从前往后获取到字符串最后
步长是负数,从开始下标从后往前获取到字符串开始
,加法运算
字符串1 + 字符串2 将两个字符串拼接在一起,产生一个新的字符串
乘法运算
字符串 * n(正整数):字符串中的内容重复n次产生一个新的字符串
比较运算符
a. == !=
字符串1 == 字符串2 ---------判断两个字符串是否相等
b. , , = ,= (所有的大写字母编码都比小写的编码小)
两个字符串比较大下:从第一个开始,找到第一对不同的字符,然后比较他们的编码值的大小
in 和 not in
字符串1 in 字符串2 :判断字符串2是否包含字符串1
字符串1 not in 字符串2 :判断字符串2是否不包含字符串1
len函数
len(序列)------- 获取序列的长度
len(字符串)----获取字符串中字符的个数
str函数
str(数据): 将数据转换成字符串
其他数据转换成字符串
所有的数据都可以转换成字符串,转换的时候就是在数据的值的最外面加引号
补充:系统对应的类型名不能用来给变量命名
字符串转其他类型
字符串转整数: int(字符串) 去掉引号后本身就是个整数的字符串才能转
字符串转浮点型: Float(字符串)
字符串转布尔: boll(字符串) ,除了空串会转化成False,其他的都会转化成True
格式字符串
指的是字符串中通过格式占位符来表示字符串中变化,然后后面再通过其他的值来给占位符赋值
含有格式占位符的字符串 % (占位符对应的值)
说明:
含有格式占位符有固定写法,可以有多个
%----固定写法
()----里面值 的个数要和前面的格式占位符一一对应
%d--整数
%s--字符串
%f--小数
%c--字符(可以将数字转换成字符)
字符串.capitalize() - 将字符串第一个字符转换成大写
2.字符串对齐
字符串.center(width, fillchar) - 居中
字符串.ljust(width, fillchar) - 左对齐
字符串.rjust(width, fillchar) - 右对齐
width - 正整数,表示新的字符串的宽度
fillchar - 字符, 填充字符串
字符串.isalpha 若字符串至少有一个字符,并且所有字符都是字母就返回True,否则返回False
字符串。isdigit() 若字符串中只包含数字就返回True,否则返回False
若字符串中只包含数字字符,则返回True,否则返回 False
3.join(seq)
字符串1.join(字符串2): 将字符串1的内容插入到字符串2的每个字符之间
max(字符串) 编码最大
min(字符串)
count(str)|返回 str 在 string 里面出现的次数
|islower()|如果字符串中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True,否则返回 False
expandtabs(tabsize=8)|把字符串 string 中的 tab 符号转为空格,tab 符号默认的空格数是 8 。
|isspace()|如果字符串中只包含空白,则返回 True,否则返回 False
endswith(suffix)|检查字符串是否以 obj 结束,如果beg 或者 end 指定则检查指定的范围内是否以 obj 结束,如果是,返回 True,否则返回 False.
字符串 :在python中是作为序列存在的,序列中的元素具有从左到右的顺序,并根据他们的相对位置进行读取和储存。严格意义来说,字符串是一系列单个字符组成的序列,其他类型的序列还包括列表和元组。在一串字符两侧加上双引号或者单引号即可创建字符串。
注意 :如果字符串中需要出现双引号或者单引号,则有两种方法。
1)使用转义字符(\)进行转义。
2)将双引号和单引号配合使用,即若向想打印单引号,可以使用双引号表示字符串,在字符串中只用一个单引号。反之亦然。
在一个字符串前面加上r;则会自动为字符串中的反斜杠\转义,使其只代表一个反斜杠\。但是注意,原始字符串最后不能有反斜杠\,否则会发生语法错误。如果非要在原始字符串最后加上,则可以写为\。
运行结果为:
有时我们需要创建一个跨行的字符串,则可以使用三引号来创建。
运行结果为
1)可以通过len()函数得到序列的长度。
运行结果为:
2)可以通过索引操作得到序列的各个元素值。python中序列的索引是从0开始依次向后推移。
运行结果为:
3)python还支持反向索引,是从最后一个向前推移的。-1是指序列中的最后一个元素值,-len(str)是指该序列的第一个元素值。
运行结果为:
4)序列还支持一种 分片(slice) 的操作,这是一种能够一步提取整个分片的方法。
分片可以看作是字符串中一部提取出其中一部分的方法。其一般形式为:X[I:J],表示从X序列中取出第I个元素到不包含第J个元素的部分,结果为返回一个新的对象。
运行结果为:
在一个分片(slice)中,左边界默认为0。同时应注意负偏移量在分片中的边界,也应为左侧数字比右侧数字小。拷贝全部字符串的用法为str[:]。
运行结果为:
5)作为一个序列,字符串还支持用“+”来合并字符串。
运行结果为:
6) 不可变性 ,python中字符串具有不可变性,在创建一个字符串之后不可以通过对其某一位置进行赋值而改变该字符串,但可以通过创建一个新的字符串并以同一个变量名命名。
运行结果为:
7)除了一般的序列操作,字符串还有一些其特有的操作方法。
如find()方法,可以用于查找一个子字符串,可以返回该子字符串的索引值。但如果存在多个符合的子字符串,只会返回第一个索引值。如果不存在该子字符串,则返回-1。replace(S1,S2)方法会将字符串中的S1替换为S2。
运行结果如下:
关于字符串,python还有许多内置函数,可以通过调用dir()函数来查看。
已有字符串形式的函数名称,那么如何调用这个函数呢?
通过调用内置函数locals()和globals()返回的字典对象,就可以可以获得名称与对象的映射关系。其中,locals()仅在全局范围内调用时可以获得函数对象。 我们来看以下的例子。
需要注意的是,使用上述方法通过字符串调用函数时,为了系统的安全,防止执行任意函数,需要对函数名做一些处理,也就是使用统一的前缀为这些函数命名。例如在上述例子中,使用前缀cmd_+函数名的形式定义函数(cmd_help,cmd_sum)。
在传入函数名字符串时,只传入函数名的后半部分(如"help","sum"),由程序添加前缀后组成完整的函数名,再调用该函数。
对于类的成员函数,则可以使用getattr()获得类成员函数。
上述代码通过字符串调用了类成员函数,与前一段代码执行的结果相同。
此外,还可以使用字典将字符串与函数对应起来调用,缺点就是每增加一个函数需要相应在字典对象中添加相应的键值,增加代码维护工作量。
以上代码在Python 3.6以上运行通过。