• python 07 数据类型


    1. 基础数据类型填充

    1.str:(不可变)

    name = "alex"
    print(name.capitalize())   #首字母大写
    
    name = "alex wusir"
    name.title()       # 每个单词首字母大写
    
    name = "AlEx Wuser"
    print(name.swapcase())  #大小写反转
    
    name = "alex"
    print(name.center(20)) #居中,一共占20个位置
    print(name.center(20,"*")) #居中填充********alex********
    
    print(name.find("l"))  #从左向右查找"l"的位置,当不存在时返回-1
    print(name.index("l")) #从左向右查找"l"的位置,当不存在时报错
    
    name = "alex"
    print("_".join(name))  # 拼接,必须时可迭代的
    
    # 格式化: 1. %  2. f
    # 3.  .format()
    name = "alex{},{},{}"
    print(name.format(1,2,3)) # 按照顺序位置进行填充
    
    name = "alex{2},{0},{1}"
    print(name.format("a","b","c")) #按照索引值进行填充
    
    name = "alex{a},{b},{c}"
    print(name.format(a=1,c=11,b=6))#按照关键字进行填充
    
    

    str可以进行+,* 字符 + 和 * 都开辟新的空间

    2. list:

    定义方式:lst = list(" ") # 放可迭代内容

    lst.sort()  # 排序 (升序)   
    #不能打印print(lst.sort())  否则 None
    lst.reverse() #反转
    lst.sort(reverse=True) # 降序
    
    # 面试题
    lst = [[]]
    new_lst = lst * 5
    new_lst[0].append(10)
    print(new_lst)		 # [[10],[10],[10],[10],[10]]
    
    列表在进行 +  * 时,元素共用
    

    3. tuple:

    tu = ("12")  # 数据类型是()中数据本身 ,字符串
    tu = (1,)   # (1,)是元组
    元组 + * 不可变共用,可变也共用
    

    4. dict:

    定义: dict(k=1,k1=1)

    print(dic.popitem())  # 返回的是被删除的键值对(键,值) 默认删最后一个
    
    dic1 = dic.fromkeys("123",[23]) # 批量添加键值对,必须再次赋值到变量dic1   {"1":[23],"2":[23],"3":[23]}
    
    fromkeys("可迭代的键",共用的值) ,必须再次赋值到变量
    dic = dict.fromkeys("123456789",1) #用dict
    

    5. set:

    set() -- 空集合
    {} -- 空字典
    定义:set("alex")  # 迭代添加
    

    6. bool:

    False:
    数字: 0   字符串: ""   列表:[]  元组:()  字典:{}     集合: set()  其他: None
    

    7. 数据类型之间转换

    list -- str  用join
    str -- list  用split
    

    2.删除列表/字典的代码坑:

    lst = [1,2,3]
    for i in lst:
        lst.append(4)
    print(lst)    # 进入死循环
    
    循环删除列表 的坑:(列表会自动向前补位, 需从后向前删除)
    lst = [1,2,3,4]
    for i in lst:
        lst.pop()
    print(lst)   # [1, 2]
    
    lst = [1,2,3,4]     #[2,3,4]  [3,4]
    for i in lst:
        lst.pop(0)
    print(lst)     #[3, 4]
    
    lst = [1,2,3,4]      #[2,3,4]  [2,4]
    for i in lst:  # i=1  i=3
        lst.remove(i)
    print(lst)     #[2, 4]
    
    lst = [1,2,3,4,6]
    for i in range(len(lst)):
        del lst[i]
    print(lst)   #报错,索引超出列表
    
    成功删除:
    lst = [1,2,3,4]
    for i in range(len(lst)):
        lst.pop()
    print(lst)   #[]  将列表从右向左删
    
    for i in range(len(lst)):
        del lst[0]
    print(lst)   #[]
    
    lst = [1,2,3,4,6]
    for i in range(len(lst)-1,-1,-1):
        del lst[i]
    print(lst)     #[]  将列表从右向左删
    
    lst = [1,2,3,4,6]
    for i in range(len(lst)):
        del lst[-1]
    print(lst)   #[]
    
    
    "*****重点*******"
    lst = [1,2,3,4,5,6]
    lst1 = lst.copy()
    for i in lst1:
        lst.remove(i)
    print(lst)   #[] 创建一个新的列表,通过新列表的元素,删除旧的列表
    
    # 删除字典的坑
    dic = dict.fromkeys("12345",1) #创建一个共用值的字典
    # print(dic)   {'1': 1, '2': 1, '3': 1, '4': 1, '5': 1}
    for i in dic:     # i 键
        dic["a"] = 6   # 增加新键值对
    print(dic)   #报错
    
    dic = dict.fromkeys("12345",1) 
    print(dic)
    for i in dic:     # i 键
        dic[i] = "123"
    print(dic) #{'1': '123', '2': '123', '3': '123', '4': '123', '5': '123'}  改一个共用的值,全都改变
    
    *******
    字典在循环迭代的时候可以改变原来值的大小(不能加不能删)
    *******
    
    *******重点*******
    dic = dict.fromkeys("12345",1)
    dic1 = dic.copy()
    for i in dic1:
        dic.pop(i)
    print(dic)  # {} 创建一个新的字典,通过新字典的的键,删除旧的字典
    

    集合和字典都是在循环迭代的时候不能改变原来的大小,而且集合也不可以改变值(因为其改的操作是:先删再加)

    3. 二次编码:

    1. 编码:

    将文字转换成字节形式   s.encode("uft-8")	
    

    2. 解码:

    将字节转换成文字形式  s.decode("uft-8")
    

    以什么编码集进行编码,就要用什么编码集解码。

  • 相关阅读:
    HTML 拖放 和 地理定位
    HTML web存储
    HTML 语义元素 和 MathML元素
    Docker Swarm
    Docker Machine
    Docker Compose
    Docker 的网络模式
    数据共享与持久化
    镜像和容器的基本操作
    Docker 简介
  • 原文地址:https://www.cnblogs.com/yzm1017/p/11178787.html
Copyright © 2020-2023  润新知