基础数据类型
2.1数字int。
数字主要是用于计算用的,使用方法并不是很多,就记住一种就可以:
#bit_length() 当十进制用二进制表示时,最少使用的位数 v = 11 data = v.bit_length() print(data)
2.2布尔值bool。
布尔值就两种:True,False。就是反应条件的正确与否。
真 1 True。
假 0 False。
2.3字符串str。
2.3.1、字符串的索引与切片。
索引即下标,就是字符串组成的元素从第一个开始,初始索引为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就是最后一个 print(a[0:5:2]) #加步长
print(a[5:0:-2]) #反向加步长
2.3.2、字符串常用方法。
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
1 #captalize,swapcase,title 2 print(name.capitalize()) #首字母大写 3 print(name.swapcase()) #大小写翻转 4 msg='egon say hi' 5 print(msg.title()) #每个单词的首字母大写 6 7 # 内同居中,总长度,空白处填充 8 ret2 = a1.center(20,"*") 9 print(ret2) 10 11 #数字符串中的元素出现的个数。 12 # ret3 = a1.count("a",0,4) # 可切片 13 # print(ret3) 14 15 a2 = "hqw\t" 16 #\t前面的补全 17 # 默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。 18 ret4 = a2.expandtabs() 19 print(ret4) 20 21 a4 = "dkfjdkfasf54" 22 #startswith 判断是否以...开头 23 #endswith 判断是否以...结尾 24 # ret4 = a4.endswith('jdk',3,6) # 顾头不顾腚 25 # print(ret4) # 返回的是布尔值 26 # ret5 = a4.startswith("kfj",1,4) 27 # print(ret5) 28 29 #寻找字符串中的元素是否存在 30 # ret6 = a4.find("fjdk",1,6) 31 # print(ret6) # 返回的找到的元素的索引,如果找不到返回-1 32 33 # ret61 = a4.index("fjdk",4,6) 34 # print(ret61) # 返回的找到的元素的索引,找不到报错。 35 36 #split 以什么分割,最终形成一个列表此列表不含有这个分割的元素。 37 # ret9 = 'title,Tilte,atre,'.split('t') 38 # print(ret9) 39 # ret91 = 'title,Tilte,atre,'.rsplit('t',1) 40 # print(ret91) 41 42 #format的三种玩法 格式化输出 43 res='{} {} {}'.format('egon',18,'male') 44 res='{1} {0} {1}'.format('egon',18,'male') 45 res='{name} {age} {sex}'.format(sex='male',name='egon',age=18) 46 47 #strip 48 name='*egon**' 49 print(name.strip('*')) 50 print(name.lstrip('*')) 51 print(name.rstrip('*')) 52 53 #replace 54 name='alex say :i have one tesla,my name is alex' 55 print(name.replace('alex','SB',1)) 56 57 #####is系列 58 name='jinxin123' 59 print(name.isalnum()) #字符串由字母或数字组成 60 print(name.isalpha()) #字符串只由字母组成 61 print(name.isdigit()) #字符串只由数字组成
2.4元祖tupe。
元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")
2.5列表list。
列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:
li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]
列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。
2.5.1、增。
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
1 li = [1,'a','b',2,3,'a'] 2 # li.insert(0,55) #按照索引去增加 3 # print(li) 4 # 5 # li.append('aaa') #增加到最后 6 # li.append([1,2,3]) #增加到最后 7 # print(li) 8 # 9 # li.extend(['q,a,w']) #迭代的去增 10 # li.extend(['q,a,w','aaa']) 11 # li.extend('a') 12 # li.extend('abc') 13 # li.extend('a,b,c') 14 # print(li)
2.5.2、删。
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
1 # l1 = li.pop(1) #按照位置去删除,有返回值 2 # print(l1) 3 4 # del li[1:3] #按照位置去删除,也可切片删除没有返回值。 5 # print(li) 6 7 # li.remove('a') #按照元素去删除 8 # print(li) 9 10 # li.clear() #清空列表
2.5.3、改。
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
1 # 改 2 # li = [1,'a','b',2,3,'a'] 3 # li[1] = 'dfasdfas' 4 # print(li) 5 # li[1:3] = ['a','b'] 6 # print(li)
2.5.4、查。
切片去查,或者循环去查。
2.5.5、其他操作。
count(数)(方法统计某个元素在列表中出现的次数)。
1 a = ["q","w","q","r","t","y"] 2 print(a.count("q"))
index(方法用于从列表中找出某个值第一个匹配项的索引位置)
1 a = ["q","w","r","t","y"] 2 print(a.index("r"))
sort (方法用于在原位置对列表进行排序)。
reverse (方法将列表中的元素反向存放)。
1 a = [2,1,3,4,5] 2 a.sort()# 他没有返回值,所以只能打印a 3 print(a) 4 a.reverse()#他也没有返回值,所以只能打印a 5 print(a)