数据类型回顾

基础数据类型补充

1.1 字符串(str)的方法补充——->在对字符串进行操作的时候对其开辟了一个新的空间,所以需要我们去定义一个新的变量去接受它,这与列表不同

1.1.1 首字母大写(capitalize())
name="alex"name1=name.capitalize()print(name1)------->Alex
name="alex,wusir"
每个首字母大写(title())
name="alex,wusir"name1=name.title()print(name1)-------Alex,Wusir[计算机无法分辨是一个单词还是两个单词,所以需要我们去用一些符号去让其分辨,可以是,。/|]
.3 大小写反转(swapcase())

name="AlexWusir"
print(name.swapcase())----->aLEXwUSIR

1.1.4 居中(center())[可以进行填充]

name="alex"
print(name.center(20,"-"))---->--------alex--------[center括号里第一位放入居中的总范围,后一位放入填充物]

1.1.5查找(find()也可以用index())
name="alexawusir"print(name.find("l"))--->1(找出来的是元素的索引,变量里有多个相同元素,永远只找第一个)print(name.find("d"))---->-1(变量里没有输出-1,不会报错)print(name.index("l"))--->1(与find一致)print(name.index("d"))--->报错(查找里面的元素没有就会报错)
字符串的拼接(.join())[所要拼接的符号加" . "join(变量名)]
name="alex"print("_".join(name))--->a_l_e_x
格式化(三种【%S%d,f format()】)
按照顺序去填充
name="alex{},{},{}"
print(name.format(1,2,3))----alex1,2,3
按照索引去填充
name="alex{2}{1}{0}"
print(name.format("a","b","c"))--->alexc,b,a
按照位置(可以当位置参数去理解)一一对应去填充
name="alex{a},{b},{c}"
print(name.format(a=1,c=2,b=3))--->alex1,3,2
字符串的加和乘(+,*)
字符串的相加就是一个拼接的过程,在此过程中新创了一个新的空间去容纳凭借后的变量(乘是一样的道理)
name="alex"
name1="wusir"
print(name+name1)--->
列表的方法

2.1.1列表的定义方式list(里面放可迭代的对象)

li=list("123")	操作失误:放入数字
print(li)--->["1","2","3"]

2.1.2 列表的排序

1.排序,默认升序(sort())
li=[2,3,4,1,7,6,5],也可以对字符串进行排序根据首个字符在编码表中的顺序排列
li.sort()
print(li)--->[1,2,3,4,5,6,7]
2.降序(reverse=True)
li.sort(reserve=True)
print(li)--->[7,6,5,4,3,2,1]

2.1.3 反转(reserve())可以和sort配合使用,先升序再降序

li=[1,2,3,4,5,4,3,2,1]
li.reserve()
也可以通过切片完成
li[::-1]
print(li)

2.1.4面试题

3.1元祖(tuple)

3.1.1数据类型是()中的数据本身

tu=("12")
print(type(tu))--->calss 'str'

3.1.2 (1,)是元祖

tu=(1,)
print(type(tu))
  1. 元祖的“+”,“*”不可变共用,可变也共用

    4.1字典(dict)

    4.1.1 定义一个字典

    print(dict(k=1,k1=2))--->{'k': 1, 'k1': 2}
    

    4.1.2 随机删除:popitem

    dic={"k":1,"k1":2,"k2":3}
    print(dic.popitem())
    print(dic)
    ('k2', 3)
    {'k': 1, 'k1': 2}   popitem有返回值,返回的是元祖形式的键值对
    python36默认删除最后一个
    

    4.1.3 批量添加键值对

    dic={}
    dic=dic.fromkeys("123",[1,2])
    print(dic)
    {'1': [1, 2], '2': [1, 2], '3': [1, 2]}需要一个变量对其进行接受,键需要是可迭代对象,值会被共用
    
    dic=dict.fromkeys("123456789",1)
    dic["1"]=18
    print(dic)--->{'1': 18, '2': 1, '3': 1, '4': 1, '5': 1, '6': 1, '7': 1, '8': 1, '9': 1}
    

    5.1 set(集合)

    5.1.1set()空集合

    {}---空字典
    定义集合:
    set("alex")#   **迭代添加**{'a', 'e', 'x', 'l'}
    

    6 bool:false

    哪些是false
    数字:0
    字符串:“”
    列表:【】
    元祖:()
    字典:{}
    集合:set()
    其它:None
    
  2. 数据类型的转化:

    list---tuple
    tuple---list
    str---list
    name="alex"
    print(name.split())--->['alex']   返回的是一个列表
    list---str
    list=["1","2","3"]
    print("".join(list))--->123    返回的是一个字符串
    
    dict--str
    dic={"k1":1}
    print(str(dic))强转--->{'k1': 1}
    
    set-list
    list-set
    

python数据类型:

可变:list,dict,set
不可变:int,str,bool,tuple
有序:int,str,bool,list,tuple
无序:dict,set
取值方式:
索引:str,list,tuple
直接:set,int,bool
键:dict

密码本:

ascii -- 没有中文

gbk -- 英文 8b(位) 1B(字节) 中文 16b 2B

unicode -- 英文16b 2B 中文32b 4B

utf-8 -- 英文8b 1B 欧洲16b 2B 亚洲24b 3B

name = "你好啊"

s1 = name.encode("utf-8") # 编码 9

s2 = name.encode("gbk") # 编码 6

s2 = s1.decode("utf-8") # 解码

print(s2.encode("gbk"))

以什么编码集(密码本)进行编码就要用什么编码集(密码本)解码

原文地址:https://www.cnblogs.com/-777/p/11178351.html