基础数据类型
数字int
数字主要是用于计算用的,使用方法并不是很多,就记住一种就可以:
#bit_length() 当十进制用二进制表示时,最少使用的位数 v = 11 data = v.bit_length() print(data)
布尔值bool
布尔值就两种:True,False。就是反应条件的正确与否。 真 1 True。 假 0 False。
bool int str 三者转换 括号前加前缀基础类型转换 int 二进制与十进制之间的转换: 二进制 -------》 十进制 0000 0100 1*2**2
字符串str
字符串的索引与切片
索引即下标,就是字符串组成的元素从第一个开始,初始索引为0以此类推
a = 'ABCDEFGHIJK' print(a[0]) print(a[3]) print(a[5]) print(a[7])
切片就是通过索引(索引:索引:步长)截取字符串的一段,形成新的字符串(原则就是顾头不顾腚)。
a = 'ABCDEFGHIJK' print(a[0:3]) print(a[2:5]) print(a[0:]) #默认到最后 print(a[0:-1]) # -1 是列表中最后一个元素的索引,但是要满足顾头不顾腚的原则,所以取不到K元素 print(a[0:5:2]) #加步长print(a[5:0:-2]) #反向加步 (反向加步长一定要加上负号)前面的第一个0可以省略不写
字符串常用方法
#captalize,swapcase,title print(name.capitalize()) #首字母大写 print(name.swapcase()) #大小写翻转 msg='taibai say hi' print(msg.title()) #每个单词的首字母大写 # 内同居中,总长度,空白处填充 ret2 = a1.center(20,"*") print(ret2) #数字符串中的元素出现的个数。 # ret3 = a1.count("a",0,4) # 可切片 # print(ret3) a4 = "dkfjdkfasf54" #startswith 判断是否以...开头 #endswith 判断是否以...结尾 # ret4 = a4.endswith('jdk',3,6) # 顾头不顾腚 # print(ret4) # 返回的是布尔值 # ret5 = a4.startswith("kfj",1,4) # print(ret5) #寻找字符串中的元素是否存在 # ret6 = a4.find("fjdk",1,6) # print(ret6) # 返回的找到的元素的索引,如果找不到返回-1 # ret61 = a4.index("fjdk",4,6) # print(ret61) # 返回的找到的元素的索引,找不到报错。 #split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。 # ret9 = 'title,Tilte,atre,'.split('t') # print(ret9) # ret91 = 'title,Tilte,atre,'.rsplit('t',1) # print(ret91) #format的三种玩法 格式化输出 res='{} {} {}'.format('egon',18,'male') res='{1} {0} {1}'.format('egon',18,'male') res='{name} {age} {sex}'.format(sex='male',name='egon',age=18) #strip name='*barry**' print(name.strip('*')) print(name.lstrip('*')) print(name.rstrip('*')) #replace name='alex say :i have one tesla,my name is alex' print(name.replace('alex','SB',1)) #####is系列 name='taibai123' print(name.isalnum()) #字符串由字母或数字组成 print(name.isalpha()) #字符串只由字母组成 print(name.isdigit()) #字符串只由数字组成
常用操作方法: captilze(): 首字母大写 swapcase():大小写反转 upper() : 全部大写 lower(): 全部小写 find:通过元素找索引,找到第一个就返回,可以切片,找不到返回-1. index:通过元素找索引,找到第一个就返回,可以切片,找不到报错. replace(old,new,count): 替换。 center: 居中 count:计算某个元素出现的次数。 split: str ---> list 分割,默认按照空格进行分割,可以指定字符。 可以设置分割次数。 rsplit。 strip:默认去除字符串两边的空格,制表符,换行符。 可以指定字符。 lstrip rstrip format:格式化输出。 isdigit():判断字符串是否全部由数字组成。 isalpha():判断字符串是否全部由字母组成。 isalnum(): 判断字符串是否全部由字母或者数字组成。 startswith,endswith: title: join(): iterable '*'.join(iterable) len:获取字符串字符的数量,长度。
for循环:用户按照顺序循环可迭代对象的内容
msg = '瞧一瞧,看一看,走过路过不要错过' for item in msg: print(item)
#for循环是将里面的内容依此打印处出来,打完即结束,为有限循环
例题:
# 实现⼀个整数加法计算器(两个数相加): 如:content = input("请输⼊内容:") ⽤户输⼊:5 + 9或5 + 9或5 + 9,然后进⾏分割再进⾏计算。 # while 1: # content = input("请输⼊内容:").strip() # a=content.index('+') # a1=int(content[0:a]) # a2=int(content[a+1:]) # sum =a1+a2 # print(sum) # 升级题:实现⼀个整数加法计算器(多个数相加): 如:content = input("请输⼊内容:") ⽤户输⼊:5 + 9 + 6 + 12 + 13,然后进⾏分割 # 再进⾏计算。 # content = input("请输⼊内容:").strip() # sum=0 # a=content.split("+") # for i in a: # i=int(i) # sum+=i # print(sum)
# 计算⽤户输⼊的内容中有⼏个整数(以个位数为单位)。 如:content = input("请输⼊内容:") # 如fhdal234slfh98769fjdla # content = input("请输⼊内容:") # count=0 # for i in content: # if i.isalpha(): # count+=1 # # print(count)