• python之数据类型补充


    1. capitalize (首字母大写)

    例题:

    s = "alex wusir"
    s1 = s.capitalize() # 格式
    print(s1)
    
    '''
    输出结果
    Alex wusir
    '''
    

    2. title (每个单词首字母大写)

    例题:

    s = 'alex wusir'
    s1 = s.title() # 格式
    print(s1)
    
    '''
    输出结果
    Alex Wusir
    '''
    

    3. count (统计出现的次数)

    例题:

    s = 'alex wusir'
    s1 = s.count('a') # 格式
    print(s1)
    
    '''
    输出结果
    1
    '''
    

    4. swapcase (大小写转换)

    例题:

    s = 'alex wusir'
    s1 = s.swapcase() # 格式
    print(s1)
    
    '''
    输出结果
    ALEX WUSIR
    '''
    

    5. 查找

    5.1 find 找的是索引值 如果找不到返回-1

    例题:

    s = 'alex taibai'
    s1 = s.find('a') # 格式
    s2 = s.find('w')
    print(s1)
    print(s2)
    '''
    输出结果
    0
    -1
    '''
    

    5.2 index 找不到报错

    例题:

    s = 'alex taibai'
    s1 = s.index('w') # 格式
    s2 = s.index('t')
    print(s1)
    print(s2)
    '''
    输出结果
    ValueError: substring not found
    5
    '''
    

    练习题:

    找到所有a的索引值
    s = "alex taibai"
    # 找到所有a的索引
    for i in range(len(s)):
        if s[i] == 'a':
            print(i)
    '''
    输出结果
    0
    6
    9
    '''
    

    6. list (列表)

    6.1 创建

    方法一

    li = list("815678234")  # 迭代创建列表
    print(li)
    '''
    输出结果
    ['8', '1', '5', '6', '7', '8', '2', '3', '4']
    '''
    

    方法二

    li = ['8', '1', '5', '6', '7', '8', '2', '3', '4'] # 直接创建列表
    

    6.2 统计

    方法: count

    li = list("815678234") # 格式
    print(li.count("1"))
    '''
    输出结果
    1
    '''
    
    l1 = list('98761879') # 格式
    print(l1.count('9'))
    '''
    1
    '''
    

    6.3 查看

    list中没有find

    这里的查看指的是查看字符索引的值

    方法: index

    例题:

    li = list('98761879')
    print(li.index("8")) # 格式
    '''
    输出结果
    1  这里8的索引值是1
    个人见解:
    如果字符在一个字符串中有多个,只打印从左到右第一个出现的索引值
    '''
    

    6.4 反转

    方法: reverse

    例题:

    li = list('123456')
    li.reverse() # 格式
    print(li)
    '''
    输出结果
    ['6', '5', '4', '3', '2', '1']
    '''
    

    6.5 排序

    6.5.1 升序

    例题:

    l1 = list('23485760')
    l1.sort() # 格式
    printi(l1)
    '''
    输出结果
    ['0', '2', '3', '4', '5', '6', '7', '8']
    '''
    

    6.5.2 降序

    例题:

    l1 = list('23485760')
    l1.sort(resvers=True) # 格式
    print(l1)
    '''
    ['8', '7', '6', '5', '4', '3', '2', '0']
    '''
    

    7. tuple (元组)

    7.1 创建

    方法一

    tu = tuple("12345")
    

    方法二

    tu = (1,2,3,4,5) # 直接创建
    

    7.2 统计

    例题:

    tu = tuple("12345")
    print(tu.count("3")) # 格式
    '''
    输出结果
    1
    '''
    

    7.2 查找

    这里查的也是索引值

    例题:

    tu = tuple("12345")
    print(tu.index("1")) # 格式
    '''
    输出结果
    0
    '''
    

    8. dic (字典)

    8.1 创建

    方法一: 直接创建

    例题:

    dic = {'k': 1, 'k1': 123, 'k2': 'aa', 'k3': 222, 'k4': 1123123}
    print(dic)
    {'k': 1, 'k1': 123, 'k2': 'aa', 'k3': 222, 'k4': 1123123}}
    

    方法二: dict

    例题:

    dic = dict(k=1,k1=123,k2="aa",k3=222,k4=1123123)
    print(dic)
    '''
    输出结果
    {'k': 1, 'k1': 123, 'k2': 'aa', 'k3': 222, 'k4': 1123123}}
    '''
    

    方法三: fromkeys (字典的批量创建)

    • 第一个参数是可迭代对象
    • 第二个参数是每个键对应的值 - - 用的都是同一个内存地址

    例题:

    dic = {}
    dic1 = dic.fromkeys('alex',[1,2,3]) # 格式
    print(dic1)
    '''
    输出结果
    {'a': [1, 2, 3], 'l': [1, 2, 3], 'e': [1, 2, 3], 'x': [1, 2, 3]}
    '''
    

    8.2 popitem (随机删除)

    • python3.6版本 默认删除最后个键值对
    • python3.5版本以前 随机删除

    例题:

    dic = {'k': 1, 'k1': 123, 'k2': 'aa', 'k3': 222, 'k4': 1123123}
    dic.popitem() # 格式
    print(dic)
    '''
    输出结果
    {'k': 1, 'k1': 123, 'k2': 'aa', 'k3': 222}
    发现'k4': 1123123已被删除,且是最后一个
    '''
    

    9. set (集合)

    创建

    例题:

    s = set("1234")   # 定义方式
    print(s)
    
    '''
    输出结果
    {'2', '4', '3', '1'} # 集合是无序的
    '''
    

    10. 数据类型转换

    10.1 str - int (字符串转换成整型)

    • 识记: 字符串中必须都是十进制的数,才能进行转换,字母字符不可转换

    例题:

    s = 'abc'
    i = int(s) # 格式
    print(i,type(i))
    '''
    输出结果
    报错
    '''
    
    # 正确
    s = '123'
    i = int(s)
    print(i,type(i))
    '''
    输出结果
    123 <class 'int'>
    '''
    

    10.2 int - str (整型转换成字符串)

    例题:

    n = 123
    s = str(n) # 格式
    print(s,type(s))
    '''
    输出结果
    123 <class 'str'>
    '''
    

    10.3 str - list (字符串转换成列表)

    例题:

    s = "123"
    li = list(s)
    print(li)
    '''
    输出结果
    ['1', '2', '3'] # 转换成列表后格式就是列表格式
    '''
    

    10.4 list - str (列表转字符串)

    例题:

    li = ["12","3"]
    s = str(li)
    print(s,type(s))
    
    '''
    ['12', '3'] <class 'str'> # 正常转换出是这种的,看上去还是列表,但类型已经是str了
    '''
    # 以下这种方法可以转化成正常str形式
    li = ["12","3"]
    print(''.join(li),type(''.join(li))) # 格式
    '''
    123 <class 'str'>
    '''
    

    10.5 list - tuple (列表转化成元组)

    例题:

    li = [1,2,3]
    tu = tuple(li)
    print(tu)
    '''
    输出结果
    (1, 2, 3)
    '''
    

    10.6 tuple - list (元组转化成列表)

    例题:

    tu = (1,2,3)
    li = list(tu)
    print(li)
    '''
    输出结果
    [1, 2, 3]
    '''
    

    10.7 set - list (集合转化成列表)

    例题:

    s = {12,3,4}
    print(list(s))
    '''
    输出结果
    [3, 12, 4]
    '''
    

    10.8 list - set (列表转集合)

    例题:

    li = [1,2,3]
    s = set(li)
    print(s)
    '''
    输出结果
    {1, 2, 3}
    '''
    

    10.9 有坑题

    1.把字符串转化成列表
    s = "123"
    li = s.split()
    print(li,type(li))
    '''
    输出结果
    ['123'] <class 'list'>
    '''
    
    2.将列表转换成字符串
    li = ['1','2','3']
    s = ''.join(li)
    print(s,type(s))
    '''
    输出结果
    123 <class 'str'>
    '''
    
    # join 不能有数字
    

    10.10 join 出现的2次

    • join 不能有数字
    # 第一次
    li = ["alex", "wusir", "taibai"]
    print('_'.join(li))
    '''
    输出结果
    alex_wusir_taibai
    '''
    
    # 第二次
    li = ['1','2','3']
    s = ''.join(li)
    print(s,type(s))
    '''
    输出结果
    123 <class 'str'>
    '''
    

    11 总结:

    字符串 -- 数字:字符串中必须都是十进制的数字

    数字 -- 字符串:直接转换

    列表 -- 字符串:''.join() -- 可迭代的对象中不能出现数字

    字符串 -- 列表:split除字典外,容器数据类型之间可以直接相互转换

    七种数据类型:

    str,int,bool,list,tuple,dict,set
    

    有序: str,int,bool,list,tuple

    无序: dict,set

    可变: list,dict,set

    不可变: str,int,bool,tuple

    访问方式:

    直接访问:int,bool,set

    顺序访问:list,tuple,str

    通过键访问: dict

  • 相关阅读:
    挑选公司--评分--给未来3年估价
    股票投资步骤
    指数基金怎么选
    指数基金梳理
    android fragment 生命周期
    mac-jmeter安装
    linux apline
    go mod 超时问题
    nginx: [alert] kill(5272, 15) failed (3: No such process) 启动不了,apache搞得鬼
    时间复杂度和空间复杂度1
  • 原文地址:https://www.cnblogs.com/zanao/p/11012933.html
Copyright © 2020-2023  润新知