s1.cAPItalize():首字母大写
s1 = "alex"s2 = s1.cAPItalize()print(s1)
s1.Title(): 每个单词首字母大写
s1 = "alex wusir"print(s1.Title())
s1.swapcase():大小写反转
s1 = "AlEx"print(s1.swapcase())
s1.center():居中 -- 填充
s1 = "alex"print(s1.center(20,"-"))
s1.find()查找,从左向右,只查找一个,不存在返回‘-1’
s1.index():查找不存在的报错
#两种均返回第一次找到的下标s1 = "alex"print(s1.find("a"))print(s1.index('e'))
拼接‘_‘.join(s1)(列表中必须全是可迭代对象)
s1 = "al3x"print("_.jion(s1)")2.List: 2.1定义方式:List("123")(可迭代) 2.2‘+’ ‘*’ 开辟新空间 2.3补充其他方法:
List1.sort()排序(升序)
降序
List1.reverse()(反转) List1.sort(reverse=True)List1 = [1,12,5,6,1,63,4,8,2,9]List1.sort()#1.升序print(List1)List1.reverse()#2.反转print(List1)List1.sort(reverse=True)#降序print(List1)3.tuple:
tu = ("12")#数据类型是()中数据本身的类型
print(type(tu))
tu = (1,)
print(tu)
元组可以 ‘+‘,‘*‘,不可变公用,可变也公用
4.dict定义:print(dict(k1=1,k2=2))
随机删除:popitem
dict1 = {'k1':1,'k2':2}dict1.popitem()print(dict1)print(dict1.popitem())#返回被删除的键值对,官方说随机删除,但是实际是默认删除最后一个(python3.6)
dict1.formkeys():批量添加(可迭代的键,共用的值)
dict1 = {}dict1 = dict1.fromkeys("123",[12])#批量添加键值对,需要字典在前面接着dict1 = dict.fromkeys("123",[12])#也可以用dict.print(dict1)#批量添加必须有字典在前面接着5.set
set() -- 空集合
{} -- 空字典
定义集合
set(‘alex‘)#迭代添加
print(set(‘alex‘))
6.bool? bool:-->False
? 1.False
? 2.数字:0
? 3.字符串:""
? 4.列表:[]
? 5.元组:()
? 6.字典:{}
? 7.集合:set()
? 8.其他:None
7.格式化? 1.%s
? 2.f
? 3.s.format()#填充
#按照顺序位置填充s1 = "alex{},{},{}"print(s.format(1,3) #按照索引进行填充s1 = "alex{2},{0},{1}"print(name.format('a','b','c'))#按照关键字填充s1 = "alex{a},{b},{c}"print(name.format(a = 1,c = 3,b = 21))3.9.2数据之间转换
#str --> Liststr1 = "alex"List1 = str1.split()#List --> strList1 = ['1','2','3']str1 = ''.join(List1)#dict --> strdict1 = {'1':1}str1 = str(dic)print(str(dic),type(str(dic))#str --> dict直转是错误的,需要切片添加print(dict("{1:1}"))#错误3.9.3数据类型细分 可变:List,dict,set 不可变:int,bool,str,tuple 有序:List,tuple,str,int,bool 无序:dict,set 取值方式: 索引:str,List,tuple 直接:set,int,bool 键:dict 3.9.4坑中菜 删除List正确应从后向前删
lst = [1,2]for i in lst: lst.append(3)print(lst)#死循环lst = [1,3,4]count = 0for i in lst: count += 1 lst.pop() #这用方法只循环了两次,输出count一目了然 #lst.pop(0) print(i) #这种方法也只循环了两次,输出i一目了然(i在for循环中是递增的。) #lst.remove(i) print(i) #这种方法和上一种差不多print(lst)print(count)#成功1.lst = [1,4]for i in range(len(lst)): lst.pop()print(lst)#成功2.lst = [1,6]lst1 = lst.copy()for i in lst1: lst.remove(i)print(lst)
删除字典坑:
#字典(和集合)在迭代的过程不能更改键值对的数量,可改可查,可同时增删。dic = dict.fromkey("123456",1)for i in dic: dic.pop(i)print(dic)#正确:dic = dict.fromkey("123456",1)dict1 = dic.copyfor i in dict1: dic.pop(i)print(dic)#正确:同时增删dic = dict.fromkeys("123",1)print(dic)for i in dic: dic.pop(i) dic.setdefault(i,i)print(dic)3.9.5二次编码: 密码本: ascii -- 没有中文 gbk -- 英文 8b(位) 1b(字节) 中文 16b (位) 2b(字节) unicode -- 英文 16b 2b 中文 32b 4b utf -8 -- 英文 8b 1b 欧洲 16b 2b 亚洲 24b 3b
name = "alex"print(name.encode("utf-8"))#编码print(name.encode("gbk"))print(name.encode("shift-jis"))name = "你好啊"s1 = name.encode("utf-8")print(name.encode("utf-8"))#编码print(name.decode("utf-8"))#解码#用什么编码,就用什么解码print(name.encode("gbk"))print(name.encode("shift-jis"))#日文,不支持中文总结
以上是内存溢出为你收集整理的python基础知识四 各类型数据方法补充,转换,分类,编码+坑中菜全部内容,希望文章能够帮你解决python基础知识四 各类型数据方法补充,转换,分类,编码+坑中菜所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)