• Python基础数据类型


    不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);

    可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

    String(字符串)

    1.字符串

    Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠  转义特殊字符。

    str = '我是字符串'

    2.字符串索引

    索引值以 0 为开始值,-1 为从末尾的开始位置。

    str = '我是字符串'
    #输出字符串中的''
    print(str[1])
    
    #输出字符串中的''
    print(str[2])

    3.字符串切片

    切片是顾头不顾尾,切记

    str = '我是字符串'
    #请输出字符串的前三位
    print(str[:3])
    #打印结果>>>'我是字'

    4.字符串步长

    str = '我是字符串'
    #请输出'我字串'
    print(str[::2])

    5.一些小操作

    str = '猪是我念着倒'
    #把字符串全部倒过来念
    print(str[::-1])

    2.1字符串的方法

    s = 'Python'
    s1 = s.capitalize()  # 首字母大写
    print(s1)
    
    s2 = s.upper()       #  全部大写
    print(s2)
    
    s3 = s.lower()       # 全部小写
    print(s3)
    
    print(s.count('L'))  # 返回字符串中有几个L
    
    print(s.endswith('x'))  # 以什么结尾
    print(s.startswith('a'))  # 以什么开头
    
    print(s.find('p'))  #通过元素查找下标  查找的没有返回-1
    print(s.index('p'))   #通过元素查找下标  查找的没有就报错
    
    
    
    
    print('_'.join(s))   #用_连接字符串
    
    print(s.split('x'))  #分割
    print(s.strip('   a'))   #脱  脱头尾两边的空格 换行符 
    
    
    print(s.replace('a','s'))  #第一个放要被替换的 第二个是替换的内容
    print(s.swapcase())    # 大小写转换
    
    
    
    print(s.title())  # 特殊符号分割的每个单词首字母大写
    
    is 系列
    print(s.isdigit())  # 判断是不是纯数字
    print(s.isalpha())    # 判断是不是汉字和字母

    3.for循环

    for 关键字 i 变量 in 关键字 要迭代的对象 冒号:
    缩进for 结构体

    s = '好嗨哟!'
    for i in s:
        print(i)
    #输出结果:
    好
    嗨
    哟
    !

     

    练习

    1.有变量name = "Python NB" 完成如下操作:
      name = "Python NB" 
    1.移除 name 变量对应的值两边的空格,并输出处理结果
    s = name.strip()
    print(s)
    2.移除name变量左边的"Py"并输出处理结果
    s = name.strip('Py')
    print(s)
    3.移除name变量右面的"NB",并输出处理结果
    s = name.strip('NB')
    print(s)
    4.移除name变量开头的a"与最后的"B",并输出处理结果
    s = name.strip('aB')
    print(s)
    5.判断 name 变量是否以 "al" 开头,并输出结果
    s = name.startswith('al')
    print(s)
    6.判断name变量是否以"NB"结尾,并输出结果
    s = name.endswith('NB')
    print(s)
    7.将 name 变量对应的值中的 所有的"y" 替换为 "p",并输出结果
    s = name.replace('y','p')
    print(s)
    8.将name变量对应的值中的第一个"y"替换成"p",并输出结果
    s = name.replace('y','p',1)
    print(s)
    9.将 name 变量对应的值根据 所有的"y" 分割,并输出结果。
    s = name.split('y')
    print(s)
    10.将name变量对应的值根据第一个"y"分割,并输出结果。
    s = name.split('y',1)
    11.将 name 变量对应的值变大写,并输出结果
    s = name.upper()
    
    12.将 name 变量对应的值变小写,并输出结果
    s = name.lower()
    13.将name变量对应的值首字母"P"大写,并输出结果
    s = name.capitalize()
    14.判断name变量对应的值字母"y"出现几次,并输出结果
    s = name.count('y')
    15.如果判断name变量对应的值前四位"y"出现几次,并输出结果
    s = name.count('y',0,3)
    16.从name变量对应的值中找到"N"对应的索引(如果找不到则报错),并输出结果
    s = name.index('N')
    17.从name变量对应的值中找到"N"对应的索引(如果找不到则返回-1)输出结果
    s = name.find('N')
    19.请输出 name 变量对应的值的第 2 个字符?
    print(name[1])
    20.请输出 name 变量对应的值的前 3 个字符?
    print(name[:3])
    21.请输出 name 变量对应的值的后 2 个字符?
    print(name[-2:])

    List(列表)

    List(列表) 是 Python 中使用最频繁的数据类型。

    列表可以完成大多数集合类的数据结构实现。列表中元素的类型可以不相同,它支持数字,字符串甚至可以包含列表(所谓嵌套)。

    列表是写在方括号 [] 之间、用逗号分隔开的元素列表。

    和字符串一样,列表同样可以被索引和截取,列表被截取后返回一个包含所需元素的新列表。

    #list    python关键字
    lst = [1,2,3]   # 存储一些数据,数据量比较大
    print(lst)

    列表的增删改查

    增:

    lst = ['1']
    
    lst.append('牛爱花')   # 追加  在末尾的位置加一个
    print(lst)
    
    lst.insert(3,'包夜')   # 插入  第一个要插入的位置索引,第二个是要插入的内容
    print(lst)
    
    lst.extend([1,2,3])   # 扩展  --- 迭代添加  整型和布尔值不能迭代
    print(lst)
    
    
    
    lst1 = [1,2,3]
    lst2 = [4,5,6]
    lst3 = lst1 + lst2   # 列表合并  开辟了一块空间
    print(lst1)
    print(lst2)
    print(lst3)
    
    结果>>>
    [1, 2, 3]
    [4, 5, 6]
    [1, 2, 3, 4, 5, 6]

    删:

    #第一种 del
    lst = ['杨紫','高圆圆','刘亦菲','关晓彤']
    
    del lst   # 删除了整个列表
    print(lst)
    
    del lst[-1]   # 配合下标删除
    print(lst)
    
    del lst[0:2]   # 配合切片删除
    print(lst)
    
    del lst[0:3:2] #配合步长我跳着删
    print(lst)
    
    #第二种通过内容删除
     lst.remove('高圆圆')   # 通过内容删除
    print(lst)
            
    #第三种 pop
    lst.pop()  # 没有指定,默认删除最后一个
    print(lst)
    
    ret = lst.pop(0)   #可以指定下标删除   具有返回值
    print(lst)
    print(ret)    # 返回被删除的内容
    
    #第四种 clear
    lst.clear()   #清空
    print(lst)

    改:

    lst = ['杨紫','高圆圆','刘亦菲','关晓彤']
    lst[0] = '杨幂'   # 通过下标修改   
    print(lst)
    
    lst[0:3] = '你好美'       
    print(lst)  # 结果 ['你', '好', '美', '关晓彤']
    
    
    
    lst[0:4:2] = '好嗨'  # 切片+步长 长度要统一
    print(lst)

    查:

    lst = ['杨紫','高圆圆','刘亦菲','关晓彤']
     for遍历
    for i in lst:
        print(i)
    
    ret = lst.index('高圆圆')  # 通过内容查找下标
    print(ret)
    print(lst.count('高圆圆'))  # 计数
    
    lst.sort()   # 排序     默认升序
    print(lst)
    lst.sort(reverse=True)  # 降序
    print(lst)

    reverse         #翻转

     列表的嵌套:

    lst = [1,2,34,[45,5,['好嗨哈']]]

    Tuple(元组)

    一个不可修改的列表  tuple tu = () 不可变数据  有序的

    元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。

    range

    range 第一个元素是起始位置,第二个是终止位置,第三个是步长


    python3 range是原生态
    Python2 range是列表

    dictionary(字典)

    字典(dictionary)是Python中另一个非常有用的内置数据类型。

    列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。

    字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。

    键(key)必须使用不可变类型。

    在同一个字典中,键(key)必须是唯一的。

    dic = {'周杰伦':'稻香','林俊杰':'江南','小沈阳':'大笑江湖','刘德华':'冰雨'}
    print(dic['小沈阳'])    # 通过键去查找值
    print(dic['刘德华'])    # 通过键去查找值

    结果:

    大笑江湖

    冰雨
     

    字典的增删改查:

    增:

    # dic = {}
    # dic['黄秋生'] = "头文字D"             #第一种
    # dic.setdefault("林俊杰")              #第二种
    # print(dic)
    
    #返回结果:
    {'黄秋生': '头文字D', '林俊杰': None}

    删:

    dic = {"林俊杰":"江南","周杰伦":"稻香","李连杰":"黄飞鸿"}
    del dic["林俊杰"]#选择key来删除
    dic.pop("李连杰") #删除后返回剩下的字典
    dic = dic.pop("李连杰") #删除后返回,删除key对应的值
    dic.popitem()#随机删除
    dic.clear()#清空
    print(dic)

    改:

    dic = {"林俊杰": "江南", "周杰伦": "稻香", "李连杰": "黄飞鸿"}
    dic2 = {"周星驰":"武状元苏乞儿","吴京":"战狼","甄子丹":"叶问","李连杰":"给爸爸的信"}
    dic.update(dic2)              #把 dic2 添加到dic中,如果dic2中有dic中的值则覆盖
    
    print(dic)

    查:

    dic = {"林俊杰": "江南", "周杰伦": "稻香", "李连杰": "黄飞鸿"}
    print(dic["林俊杰"])    #直接用key查询,如果key不存在 ,则会报错.
    print(dic.get("林俊杰")) #用get方法查询,如果key不存在返回None
    setdefault() #先看看有没有key,有的话就不执行,没有的话就执行,根据key返回值
    
    dic.setdefault("菲欧娜","无双剑姬")#先去执行新增的流程,查询结果.
    print(dic)

    个别小操作:

    '''
    1.keys()获取所有的键,这个返回的不是列表 2.values()获取所有的值 3.items()获取所有的键值对,返回的是元祖 结构,直接把元祖或者列表中的数据拿出了
    '''
    print(dic.values()) for key in dic.keys(): print(key) print(dic[key]) print(dic.items()) #拿到的是元祖 for k , v in dic.items(): print(k) print(v)
  • 相关阅读:
    白名单执行payload之rundll32
    java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/JsonNode
    Redis key过期监听
    Kafka拦截器
    常用工具类
    Redis Pipelining
    Redis 发布订阅(Pub/Sub)
    Redis Stream
    模拟Spring自实现监听器
    Jackson
  • 原文地址:https://www.cnblogs.com/Tiamo-w/p/10225667.html
Copyright © 2020-2023  润新知