文章目录
一 、进制与类型转化
1. 二、八、十六进制的书写方法
- 0b or 0B 二进制。0B101=5
0o or 0O 八进制。0O10=8
0x or 0X 十六进制 0X10=16
2. int,round实现类型转化
- int(3.45)>>>3
int(Ture)>>>1
int(False)>>>0
int(‘23456’)>>>23456
int(’'24vaue32)>>>报错 不能有字母
int(3.94)=3 取整
round(3.94)=4 四舍五入
3. 自动转型
- 整数+浮点数=浮点数。2+8.0=10.0
- python3中整数可以任意大小,python2中有限制,因此python3中可以做超大的计算,而不会造成“整数溢出”,这也是python特别适合科学运算的特点。
4. 10的次幂
- 3.14=314E-2=314*10^-2
二、 时间、split()、join()
1. 时间的表示
- 1979年1月1号00:00:00 开始,以毫秒(1/1000秒)进行计算,我们也把1970年这个时刻称为“unix时间点”python中通过time.time()获得当前时刻,返回的值是以秒为单位,带微妙(1/1000毫秒)精度的浮点值。例如:15434837846.355
2.split()分割
a=‘to be or not to be’
a.split()
[‘to’,‘be’,‘or’,‘not’,‘to’,‘be’
按照to切割
a.split(‘to’)
[‘be or not’,‘be’]
3.join()合并
a=[‘aa’,‘bb’,‘cc’]
"".join(a)
aabb*cc
“”.join(a)
aabbcc
(1) 测试拼接符和join(),不同的效率
//测试拼接符和join(),不同的效率
import time
time1=time.time() #起始时间
a=''
for i in range(1000000):
a+='str'
pass
time2=time.time() #终止时间
print("拼接所需时间为"+str(time2-time1))
time3=time.time() #起始时间
b=[]
for i in range(1000000):
b.append('str')
pass
a="".join(b)
time4=time.time() #终止时间
print("join所需时间为"+str(time4-time3))
运行结果:
拼接所需时间为:0.0368499755859375
join所需时间为:0.013145923614501953
三、bool、or、and、not
1. bool
- ture=1 false=0
a=Ture
b=a+1
b=4
2. and、or、not(与或非)
- x or y 有一个对就是Ture(如果x为Ture,直接返回Ture)
- x and y 两个都要是对的 (如果x时False,直接返回false)
- not x 取反
四、字符串切片 slice操作
- 标准格式:
[起始偏移量start:终止变量end:步长step] - 负数情况
[-3:] 倒数三个数
[-8:-3] 倒数第八个数到倒数第四个数(左闭右开)
[::-1] 步长为负,从右到左反向提取
五、常用函数
1. 常用的查找方法
len(a) 字符串长度
a.startwith(’ ') 以指定字符串开头
a.endwith(’ ') 以指定字符串结尾
a.find(’’) 第一次出现指定字符串的位置
a.rfind(’’) 最后一次出现指定字符串的位置
a.count(’’) 指定字符串出现了几次
a.isalnum() 所有字符全是字母或数字
2. 去除首位信息
#s#x#t#’.strip(’#)
s#x#t 去了除首尾的#
.lstrip(’#’) 去除左边的*
.rlstrip(’#’) 去除右边的*
括号里是空格就是去除空格
3. 大小写转换
a.capitalize() 产生新的字符串,首字母大写
a.title() 产生新的字符串,每个单词都首字母大写
a.upper() 产生新的字符串,所有字符全转成大写
a.lower() 产生新的字符串,所有字符全转成小写
a.swapcase() 产生新的字符串,所有字母大小写转换
4. 格式排版
a=‘SXT’
a.center(10,’’)
'×××SXT××××’. (将a变为10个字符且剧中,其他位置由×填充 ×是*)
a.center(10)
’ SXT ’ (其他位置由‘ 空格’填充)
a.ljust(10,’’)
'SXT******’. (左对齐)
5. 其他方法
a.isalnum() 是否为字母或数字
a.isalpha() 检测字符串是否只由字母组成(含汉字)
a.isdigit() 检测字符串是否只由数字组成
a.isspace() 检测是否为空白符
a.isupper() 是否为大写字母
a.islower() 是否为小写字母
六、字符串的格式化
1. format()的基本用法:
a=‘name:{0},age:{1}’
a.format(‘Zfloss’,23)
or
a=‘名字:{name},年龄:{age}’
a.format(‘name=‘Zfloss’’,age=23)
2. 填充与对齐
- ^、>、<分别是居中、左对齐、右对齐,后面接一个数字,数字代表宽度
print('我是{0},我喜欢数字{1:#^6}'.format('zflosss',66))
运行结果:
我是zflosss,我喜欢数字##66##
- 数字为个字符 空白处由#填充 什么都不写就用空格填充
3. 数字的格式化
- 浮点数通过f,整数通过d进行需要的格式化。
七、可变字符串
import io
a='hello word'
sio=io.StringIO(a)
#io.StringIO() 是以字符串的方式从内存中的文件读取数据。
print(sio)
print(sio.getvalue())
sio.seek(7) #找到第八个字符
sio.write('f') #将第八个字符改为f
print(sio.getvalue())
运行结果:
<_io.StringIO object at 0x0000026CED2FF040>
hello world
hello wfrld