python 字符类型
数字类型:复数:x=1+2j #1为实数,2j为虚数print(x.real)print(x.imag)可变:值变,id不变,可变==不可hash不可变:值变,id就变,不可变==可hashprint(hash(123))数字类型和字符串类型为不可变字符串类型:在'',"",''' '''内定义的一串字符。mag='hello '1.按索引取值(正向取+反向取):只能取print=(mag[0])print=(mag[-1])2.切片(顾头不顾尾,步长)也适用于列表print(mag[0:4]) #0为首,4为尾 hellprint(mag[1:4:2])#1为首,4为尾,2为步长,隔2取一次。 lprint(mag[:]) #开始取到结尾rint(mag[-1::-1]) #倒着取出所有值3.长度:lenprint(len(mag)) 等于 print(mag.__len__()) 4.成员运算in和not inprint('llo' in mag)print('llo' not in mag)5.移除空白strip:只清除2边的空字符password=' 123456 'pritn(password.strip())password=input('>>:').strip()lstrip(去左)rstrip(去右)6.切分splituser='root:x:0:0::/root:/bin/bash'res=user.split(':') #默认以空格分隔print(res[0]) rootpath='C:\\a\\d.txt'print(path.split('\\',1)) #1为只分隔一次print(path.rsplit('\\',1)) #从右向左切7.循环mag='hel'n=0size=len(mag)while n < size: print(mag[n]) n+=1for i in mag: print(i)for i in range(0,5,2): print(i)8.大小写变化print('Ajisdf'.lower()) #变小写print('asdF'.upper()) #变大写9.startswith(以什么开始),endswith(以什么结尾)ma=amk thuiprint(ma.startswith('a'))print(ma.endswith('i'))10.format传值print('my name is %s age is %s' %('lx',78))print('my name is () age is ()' format('lx',78))print('my name is (x) age is (y)' format(y=78,x='lx'))print('my name is (0) age is (1) you love (0)' format('lx',78))11.join(和split相反)只用于字符串类型的列表拼接inct='root:x:0:0:/root:/bin/bash'l=inct.split(':')print(':'.join(l))12.replscemag='my is koko my is toto my is bubu'mag=mag.replsce('my','kawa',1) #默认替换所有,1为一次print(mag)13.isdigit判断值为是否为数字类型password='123'if password.isdigit(): password=int(password)14.find,rfind(从右找),index,rindex(查找),count(统计)mag='my is ksis'print(mag.find('is'))print(mag.index('is'))print(mag.count('is'))15.center(填充),ljust(左对齐),rjust(右对齐),zfill(用0填充)print('hi',center(30,'#')) #30个字符,不够用#填充。print('hi',ljust(30,'#'))print('hi',rjust(30,'#'))print('hi',zfill(30,'#'))15.expandtabs #用多少个空格分离2个单词print('hello\tword'.expandtabs(10))16.captalize(首字母大写),swapcase(大小写反转),title(每一个单词的首字母大写)print('i is kooll'.catpalize())17.is数字判断num1=b'2' #bytesnum2=u'4' #unicode,python3中无需加unum3='二' #中文数字num4='IV' #罗马数字isdigit,(适用bytes,unicode)print(num1.isdigit())print(num2.isdigit())print(num3.isdigit())print(num4.isdigit())isdecimal,(适用unicode)print(num2.isdigit())print(num3.isdigit())print(num4.isdigit())isnumeric,(适用unicode,中文,罗马)print(num2.isdigit())print(num3.isdigit())print(num4.isdigit())name='mis123'print(name.isalnum()) #判断字符串是否由字母和数字组成print(name.isalpho()) #判断字符串是否只由字母组成print('print'.isidentifier()) #判断关键字print('abd'.islower()) #判断全是否为小写print('ASD'.isupper()) #判断大写print(' '.isspace()) #判断空格print('Adj'.istitle()) #判断标题,即判断单词的首字母大写17.列表:1.按索引取值(正向取+反向取):只能取2.切片(顾头不顾尾,步长)3.长度:len4.循环5.成员运算in和not in...mibs=['cc','aa','rr']print(list['kasidhui']) #把字符,装换为列表在列表后添加:mibs.append(6)删除:del mibs[2]mibs.remove('cc')删除并取出结果:resd=mibs.pop(2) #默认从末尾删print(reds)循环列表:for i in mibs: print(i)在列表内插入:mibs=['cc','aa','rr']mibs.insert(2,'bb') #2为位置数,bb为值print(mibs) 'cc','aa','bb','rr'清空列表的值:print(mibs.claer())拷贝一个列表:mm=mibs.copy()统计列表值的个数:print(mm.count('aa'))往列表里加多个值:hh=['rt','ty']print(mm.extend(hh))返回列表的值的位置:mibs=['cc','aa','rr']print(mibs.index('aa'))将列表的值反转:mibs=['cc','aa','rr']print(mibs.reverse())['rr','aa','cc']将列表的值排序:hy=[11,2,8,15]hy.sort()print(hy) [2,8,11,15]print(hy.sort(reverse=True)) [15,11,8,2]x='ahoe'y='v'x<y,判断首字母的排序,a-z从小到大,数字大于字母18.元组:存多个值,对列表来说,元组不可变(是可以当字典的key的),主要是用于读定义:与列表类型对比,只是[]变为()1.按索引取值(正向取+反向取):只能取2.切片(顾头不顾尾,步长)3.长度:len4.循环5.成员运算in和not in...age=(11,22,33,44) 等于 age=tuple(11,22,33,44)19.字典:存放多个值,key:value 存取值速度快,无序定义:key必须是不可变类型(int,float,str,tuple),value可以是任意值1.按索引取值(正向取+反向取):只能取2.切片(顾头不顾尾,步长)3.长度:len4.循环...info={'name':'dachui','age':18,'sex':'xxx'} 等于 info=dict(age=18,sex='xxx',name='dachui')info=dict([('name','dachui'),('age',18),('sex','xxx')])info=dict([['name','dachui'],['age',18],['sex','xxx']])创建一个空字典:info={}.fromkeys(['name','age','sex'],None) #value为None删除:info={'name':'dachui','age':18,'sex':'xxx'}print(info.pop('name')) #没有默认值print(info.popitem('name':'dachui')) key ,value ,键值对items()info={'name':'dachui','age':18,'sex':'xxx'}print(info.keys()) #结果不是一个列表print(list(info.keys())) #结果为一个列表print(info.values()) #结果不是一个列表print(list(info.values())) #结果为一个列表print(info.items()) #结果不是一个列表print(list(info.items())) #结果为一个列表案列:购物车mas={'衣服':'200$','裤子':'2000$','车':'55555$','锤':'45454$'}goods=[]while True: for k in mas: print(k,mas[k]) chice=input('商品名:').strip() print(chice) if len(chice) == 0 or chice not in mas: print('商品名不存在') continue while True: num=input('购买个数:').strip() if num.isdigit(): break goods.append((chice,mag[chice],int(num))) print('购物车',goods) break20.集合:作用:关系运算,去重定义:{}内用逗号分隔每个元素都必须是不可变类型,无序1.按索引取值(正向取+反向取):只能取2.切片(顾头不顾尾,步长)3.长度:len4.循环5.成员运算in和not in...l={'sdf','dd','gg'}k={'dd','gr','eer'}交集:& 都存在的值print(l & k)合集:| 所有的值,去重的结果print(l | k)交叉补集:^ 除了交集以外的值print(l ^ k)差集:- 两个集合相减print(l - k)父集,子集: >,>= ,<,<= 父集包含子集s1={1,2,3,4} #父集s2={1,2,3} #子集print(s1 > s2) #Ture列表转换为集合:h=['a','b','c','a','a']print(seat(h))difference_update()相减并更新:s1={1,2,3,4} s2={1,2,3} print(difference_update(s2))discard指定删除集合的值remove删除不在的元素会报错isdisjoint两个集合没有共同部分时,为真add,update添加值.......分类:占用空间:集合<元组<列表<字典存值个数:只能存一个值(数字,字符串),能存多个值(列表,元组,字典)可变:列表,字典,集合不可变:数字,字符串,元组直接访问:数字有序(序类类型):字符串,列表,元组key值访问(映射类型):字典无序:集合,字典 字符编码1.字符按照什么标准存的,就要按照什么标准解码,此处的标准指的就是字符编码2.unicode--->encode--->gbk 存 gbk---->decode---->uicode 读3.python3解释器默认使用的字符编码是UTF-8 python2解释器默认使用的字符编码是ascii指定解释器:#coding:gbk4.pythone2的str就是python3的bytes python2的Unicode就是python3的str
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。