1.什么是数据类型
int 用于计算。
bool 用于判断,True False。
str 存储少量数据,进行操作。
''引号引出的都是str
list 列表[]存储大量的数据。
元祖 只读列表(1,2,3'第三方',)
字典dict 关系性{'name':'xxx','age':18}
集合 {1,2,3,'asd'}
int 转换成 str
i = 1
s = str(i)
print(i)
str 转换成 int
i = 1
s = int(i) #str转换必须是数字
print(i)
2.int
十进制用二进制转换时,最少使用的位数。
i = 50
num = i.bit_length() print(num)
3.bool
int 转换成 bool
i = 3
s = bool(i)
print(i)
0 就是 False,非0 就是 True。
bool 转换成 int
True为 1, False 为 0。
while True:
pass
while 1: #while 1 比 while true 效率高
pass
str 转换成 bool
i = 'aaa'
s = bool(i)
print(i)
空字符串就是 False,非空就是True。
4.str
4.1索引与切片
索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推。
s = 'ABCDEFGHIJKL'
print(s[0])
print(s[5])
print(s[7])
print(s[10])
print(s[-1]) #-1就是最后一个
切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾尾)。
a = 'ABCDEFGHIJK'
print(a[0:4])
print(a[5:9])
print(a[0:]) #默认到最后
print(a[0:-1]) #-1就是最后一个
print(a[5:9:2]) #加步长
print(a[10:0:-3]) #反向加步长
字符串的操作
#### captalize , swapcase , title s = 'sole memory' s1 = s.capitalize() #首字母大写 print(s1) s2 = s.upper() #全部都是大写 print(s2) s3 = s.lower() #全是小写 print(s3) s4 = s.swapcase() #大小写反转 print(s4) s5 = s.title() #每个单词的首字母大写 print(s5) # 总长度, 内同居中, 默认空白填充 ret2 = a1.center(20,"*") print(ret2) #\t前面的补全 # 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。 a = "sole\t" r4 = a.expandtabs() print(r4) #######公共方法 len() 字符的数量 s = 'asdhujdshfka中国fskaf' l = len(s) print(l) #startswith 判断是否以...开头 #endswith 判断是否以...结尾 n4 = "dkfjdkfasf5sa4" ret4 = n4.endswith('jdk',3,6) # 顾头不顾腚 print(ret4) # 返回的是布尔值 ret5 = n4.startswith("kfj",1,4) print(ret5) ####寻找字符串中的元素是否存在 find与index相同,首选find ret6 = a4.find("fjdk",1,6) print(ret6) # 返回的找到的元素的索引,如果找不到返回-1 ret61 = a4.index("fjdk",4,6) print(ret61) # 返回的找到的元素的索引,找不到报错。 #split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。 r9 = 'title,Tilte,atre,'.split('t') print(r9) ret9 = 'title,Tilte,atre,'.rsplit('t',1) print(ret9) ######format的三种玩法 格式化输出 res='{} {} {}'.format('sole',18,'music') res='{0} {1} {2}'.format('sole',18,'music') res='{name} {age} {hobby}'.format(hobby='music',name='sole',age=18) print(res) #替换 replasce s = '按实际法务实际会计' s1 = s.replasce('实际','事实',1) print(s) #####is系列 name='sole525' print(name.isalnum()) #字符串由字母或数字组成 print(name.isalpha()) #字符串只由字母组成 print(name.isdigit()) #字符串只由数字组成
#默认删除前后空格 (用户输入 s = input().strip()) s9 = s.strip('#! @%') print(s9) #rstrip从右删 lstrip从左删
for 有限循环
msg = '123456789'
for i in msg:
print(i)