Python高级变量

    xiaoxiao2022-07-07  173

    文章目录

    1 字符串1.1 下标和切片 2 列表2.1列表的介绍2.2 列表的循环遍历2.3 添加元素2.4 修改元素2.5 查找元素2.6 删除元素2.7 排序(sort、reverse)2.9 列表的嵌套 3 集合4 元组4.1 元组操作4.2 元组补充 5 字典

    1 字符串

    字符串:在单引号和双引号以及三个三引号和三个双引号的内容

    1.1 下标和切片

    字符串的输入和输出 input()所有接收的内容都是字符串 字符串的输出:%s name='张三' print('这个人的名字叫:%s'%name)

    结果: 下标索引 如果想要获取字符串中某个字符,那么通过下标索引的方式 例如:str1[0]

    str1='abcdesf' print(str1[0]) print(str1[4])

    结果:

    切片: 就是截取一部分的操作 语法:[起始:结束:步长] 说明:在切片操作中,切片属于左闭右开型,通俗点就是左边能取到,而右边取不到

    str1='hlfsajfajsofdjewoinds' print(str1[1:5]) # 取字符串下标从1开始到4的子序列 print(str1[2:]) # 取字符串下标从2开始一直到字符串末尾 print(str1[2:8:2]) # 取字符串下标从2开始到7中间每隔2个取一个字符 print(str1[1:-1]) # 取字符串下标为1到字符串倒数第二个的所有字符序列

    结果: find 检测字符串a是否包含在字符串b中,如果包含,则返回开始的索引值,否则返回-1

    find:字符串a是否包含在b中 语法: b.find(a,start=0,len(b)) str='asdgajljflgasajfdsfj' str1='ga' print(len(str1)) print(str.find(str1,0,len(str))) # print(str.find(str1,0,3))

    结果:在第三位找到(0,1,2,3) index index和find用法一直,唯一不同的就是当查找的子序列不在另一个字符串中的时候,会报异常 用法:b.index(a,start=0,len(b))

    str='asdgajljflgasajfdsfj' str1='ga' print(str.index(str1,0,len(str)))

    结果:在第三位找到(0,1,2,3) count: 表示子序列在另一个字符串中出现的次数 用法:a.count(b,start=0,end=len(a))

    str='asdgajljflgasajfdsfj' str1='ga' print(str.count(str1,0,len(str)))

    结果: 其他介绍: upper:

    name='xiao zhan' print(name.upper())

    结果:全变为大写

    print(name.capitalize())

    结果:首字母变为大写

    print(name.replace('xiao','lao'))

    结果

    str='hello world yeah yeah yeah' print(str.replace('yeah','year',2)) print(str.split(' ',2)) print(len(str)) str1=str.ljust(35) print(str1.rjust(40)) print(str1.lstrip()) print(str1.rstrip()) str2=str1.rstrip()

    结果:

    str='hfahsdfiuew' str1='123435' str2='fhsdshn46565dnsns' print(str.isalpha()) print(str1.isalpha()) print(str.isdigit()) print(str1.isdigit()) print(str2.isalnum()) print(str2.join(str)) print(str1.startswith('lo')) print(str2.endswith('yeah'))

    2 列表

    2.1列表的介绍

    是python中的一种数据结构,是很重要的, 列表里面所存的元素类型可以是多种,比如说可以存str int float bool等。 列如: name_list=[] 增加: append:往列表末尾增加元素

    2.2 列表的循环遍历

    定义列表 type()可查看类型

    name_list=[] print(name_list) print(type(name_list))

    通过list[index]来获取这个列表的值

    name_list=['杨浩','单赛','静初'] print(name_list[0]) print(name_list[1]) print(name_list[2]) print(len(name_list))

    结果: 获取列表中的内容 通过循环(for while)

    name_list=['杨浩','单赛','静初'] for name in name_list: print(name) i=0 while i<len(name_list): print(name_list[i]) i+=1

    while和for结果一样

    2.3 添加元素

    append:把新的元素追加到了列表的末尾

    name_list=['杨浩','单赛','静初'] name_list.append('杨威') print(name_list) name_list.append('魏富强') print(name_list)

    结果: extend:把新的列表添加到原来的列表中,把新的列表中的元素添加到了原来列表的末尾

    name_list=['杨浩','单赛','静初'] name_new=['易怀玲','朱艳涛'] name_list.extend(name_new) print(name_list)

    结果: insert(index,new):在列表的指定位置,添加新元素,如果添加的是一个字符串,那么就在原来的列表中添加这个元素,如果添加的是一个列表, 那么在指定的位置把整个列表添加进去

    name_list=['杨浩','单赛','静初'] name_new=['易怀玲','朱艳涛'] name_list.insert(1,'董泽坤') print(name_list) name_list.insert(1,name_new) print(name_list)

    2.4 修改元素

    如何获取列表里的列表的元素 ,通过list[index][index]

    name_list=['杨浩','单赛','静初'] print(name_list[1][0])

    结果: 修改列表中的元素:通过下标的方式 list[index]=new

    name_list=['杨浩','单赛','静初'] name_list[1]='朱艳涛' print(name_list)

    2.5 查找元素

    in :如果元素存在列表中,那么返回true,否则返回false not in :与in相反 index : 查看元素是否在列表中,如果不在,则抛出异常 count:统计元素在列表中出现的次数

    name_list=['杨浩','单赛','静初'] if '马明璐' not in name_list: print('不存在') else: print('存在')

    结果: index:

    name_list=['杨浩','单赛','静初'] name_index=name_list.index('静初',0,len(name_list)) print(name_index)

    结果: count:

    name_list=['杨浩','单赛','静初'] name_count=name_list.count('静初') print(name_count)

    结果:

    2.6 删除元素

    del: 根据下标索引,删除元素

    name_list=['杨浩','单赛','静初'] del name_list[0] print(name_list)

    pop: 默认情况下,删除最后一个元素,也可以删除指定位置的元素

    name_list=['杨浩','单赛','静初'] name_list.pop() print(name_list) name_list=['杨浩','单赛','静初'] name_list.pop(1) print(name_list)

    结果:制定删除 remove: 根据列表中元素的值进行删除

    name_list=['杨浩','单赛','静初','董泽坤'] name_list.remove('董泽坤') print(name_list)

    2.7 排序(sort、reverse)

    sort:将list按特定顺序重新排列,默认从小到大,参数reverse=True可改为倒序,从大到小。 reverse():将list倒置

    list=[2,5,1,6,8,2,0] list.sort(reverse=True) print(list) list.reverse() print(list)

    结果:

    2.9 列表的嵌套

    列表嵌套的语法 一个列表中的元素又是一个列表 list = [[‘’,’’],[‘’,’’],[‘’,’’],…]

    练习: 一个学校,有3个办公室,现在有8位老师等待工位的分配,请编写程序,完成随机分配

    teachers=['xiaoming','xiaowang','xiaoli','xiaoying','john','amy','aa','bbb'] offices=[[],[],[]] import random for temp in teachers: index=random.randint(0,2) offices[index].append(temp) i=1 for temp_office in offices: print('第%d个办公室,有%d个人'%(i,len(temp_office))) for teacher in temp_office: print('%s'%teacher,end=',') print() i+=1 print('*****************')

    结果:

    3 集合

    集合:是一个无序不重复的序列 功能:去重

    集合只能通过for循环获取集合中的元素

    注意: 在创建空集合的时候,不能用{}直接创建,而是用set()函数创建。 集合不支持索引,因此不能用while循环获取集合中的元素。

    demo: a = set(‘ahdkjfshlsf’) b = set(‘akhkfdkjdvdk’) print(a - b) 差集 print(a | b) 并集 print(a & b) 交集 print(a ^ b) a和b不同时存在的元素

    创建一个空的集合 用set()函数

    col=set() print(col) print(type(col)) col={'joe','hello','world'} if 'joe' in col: print('true') else: print('false')

    结果: 如何把列表中重复的元素去掉

    name_list=['wang','sun','li','wang','sun','li','zhao'] print(name_list) name_set=set(name_list) print(name_set) name_list=list(name_set) print(name_list)

    结果:

    sets={'xiaowang',23,44.5,False} print(sets)

    结果:

    sets={'xiaowang',23,44.5,False} print(sets) print(len(sets)) for temp in sets: print(temp)

    结果:

    4 元组

    元组和列表类似,但是元组不能进行修改 元组可以使用下标进行获取 元组的符号是(),列表是[]

    支持索引: 可以通过循环获取元组中的元素(for while)

    元组虽然不能进行修改,但是可以把两个元组进行拼接 元组删除,只能删除这个元组

    4.1 元组操作

    tuple1=() print(type(tuple1))

    访问元组:通过下标索引访问,下标从0开始

    tuple1=('张三','wang',23,56,3.4) print(tuple1) print(tuple1[0]) print(tuple1[2])

    结果:

    tuple1=('张三','wang',23,56,3.4) for temp in tuple1: print(temp) tuple1=('张三','wang',23,56,3.4) i=0 while i<len(tuple1): print(tuple1[i]) i+=1

    结果:一样 修改元组:元组中的元素值是不允许修改的,但是可以对元组进行拼接

    tuple1=('张三','wang',23,56,3.4) tuple1=(1,2,3) tuple2=(4,5,6) tuple3=tuple1+tuple2 print(tuple3)

    结果: 删除元组:元组中的元素值是不允许删除的,但是可以删除整个元组 元组被删除后,输出变量会有异常信息

    del tuple3

    4.2 元组补充

    元组运算符:与字符串一样,元组之间可以使用 + 号和 * 号进行运算。这就意味着元组可以组合和复制,运算后会生成一个新的元组 元组索引、截取 元组内置函数

    5 字典

    字典:在{}里面的一个一个的key-value键值对的数据结构 可以通过get()获取想要的那个key的值,还可以设定默认值,当字典中没有 这个key的时候,输出默认值,如果在字典中有这个key及对应的值,那么输出 字典中的值

    可以通过for循环获取字典中的元素(k-v) keys():获取字典中所有的key键 values():获取字典中所有的value值 items():获取字典中的key-value键值对

    dict={'name':'jim','id':1001,'address':'北京','age':19} print(dict['name']) print(dict.get('age',15)) for k in dict.keys(): print(k) for v in dict.values(): print(v) for k in dict.items(): print(k)

    修改和添加都是通过key键的方式完成 修改字典中的key对应的value值 dict[‘key’]=new_value 添加字典中的元素 dict[‘new_key’]=new_value 删除字典中的某个元素 del dict[‘key’] 清空字典 dict.clear() 删除字典 del dict

    dict1={'name':'jim','id':1001,'address':'北京','age':19} print(dict1) dict1['id']=1002 print(dict1) #修改字典中的key对应的value值 dict1['sex']='男' print(dict1) #删除字典中的某个元素 del dict1['age'] print(dict1) #清空字典 dict1.clear() print(dict1) #删除字典 del dict1 print(dict1)

    最新回复(0)