Day03第三天 Python基础三

#_Author_: yaoyaoba
#_Date_: 2019/11/26

# 一.列表的增/删/改/查

# 增 append 插入列表最后一位
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# s.append('xianren')
# print(s)

# #方法一(有缺陷)
# hr = []
# while 1:
# hr.append(input("请输入你要录入的人员(退出请按'Q'):"))
# if 'q' in hr:
# print(hr)
# break

# #方法二(完美)
# hr = []
# while 1:
# username = input("请输入你要录入的人员(退出请按'Q'):")
# if username.strip().upper() == 'Q':
# break
# else:
# hr.append(username)
# print(hr)
#--------------------------------------------

# 增 insert 根据索引去插入
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# s.insert(4,'我是插班生') #插入位置=索引位置,原索引位置数据后移一位
# print(s)
# #打印结果 [1, 2, 3, 'fjdkaj', '我是插班生', 'fdsaeddd', 1234, 'ffdsaecc']

#--------------------------------------------

# 增 extend 迭代插入
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# s.extend('我是你爸爸') #将拆分成每个元素分别插入 我,是,你,爸,爸
# s.extend(123) #会报错,大于一位数的Int 不是可迭代的元素.
# s.extend([1,2,3]) #会将列表拆分成单个元素,分别插入
# print(s)

#--------------------------------------------

# 删 pop 按索引删除,并反回值,反回的值可以赋值变量
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# s.pop(2)#括号里写索引,可以将对应索引的元素删除,并可以反回给一个变量
# s.pop() #括号里不写索引,默认是删除最后一个,并可以将删除的元素反回给一个变量
# print()
#--------------------------------------------

# 删 remove #按元素删除
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# s.remove(1234) #将列表中的'1234'元素删除了
# print(s)
#--------------------------------------------

# 删 clear 清空列表

# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# s.clear() #清空列表,但列表还在,只不过是个空列表
# print(s)
#--------------------------------------------

# 删 del 删除列表
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# del s #将整个列表删除了

# del s[0:4] #切片删除列表中的多个内容
# print(s) #打印会报错,因为巳经删除了,不存在这个 s 变量了

#--------------------------------------------

# 改 (直接改)
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# s[0] = 'one' #直接改,找到对应的索引,直接替换
# s[1] = ['one',1,2,3] #还可以改成列表 list ,直接替换
# print(s)
#--------------------------------------------

# 改 (切片改)
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# s[0:3] = 'one' #把0到3拿出来,填上你改的,但是,是迭代的去改,以最小元素为单位
# s[0:3] = [1,2,3,8,8,] ##把0到3拿出来,迭代的填上你列表的最小元素,但是,是迭代的去改,以最小元素为单位
# print(s) #打印内容:['o', 'n', 'e', 'fjdkaj', 'fdsaeddd', 1234, 'ffdsaecc']
#--------------------------------------------

# 查 (for i in )
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# for i in s: #迭代查
# print(i)
# print(s[0:2]) #切片查

# 二.公共方法
# len() 查有几个元素(或者说是 列表的长度)
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# l = len(s)
# print(l)

# count() 查列表中某个元素出现了几次
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# num = s.count(2)
# print(num)

# index() 通过元素找索引
# s = [1,2,3,'fjdkaj','fdsaeddd',1234,'ffdsaecc']
# num = s.index('fjdkaj') #找不到会报错
# print(num)

#--------------------------------------------

# 排序

# 反转
# s = [1,8,3,12,3,4,24,55,37,22]
# s.reverse() #反转列表
# print(s)

#倒序
# s = [1,8,3,12,3,4,24,55,37,22]
# s.sort(reverse=True) #倒序排序
# print(s)

#正序
# s = [1,8,3,12,3,4,24,55,37,22]
# s.sort() #括号里啥也不写就是正序排序
# print(s)



# 三.列表的嵌套
# 需求一
# li = ['xiaobai','小二','小王',['abc','ddd',121,774],432]
# print(li[1][1]) # 找列表中 '小二' 中的 '二'

# 需求二
# li = ['xiaobai','小二','小王',['abc','ddd',121,774],432]
# print(li[0]) # 打印列表中索引 '0' 的字符串.
# name = li[0].capitalize() # 将索引中 '0' 的字符串首字母大写并赋值给变量 name
# print(name) # 打印 变量 name
# li[0] = name # 将 变量name 替换到列表 0 索引位的字符趾
# print(li) # 打印列表
# # Ps.也可以直接这样写: li[0] = li[0].capitalize()

# 需求三
# li = ['xiaobai','小二','小王',['abc','ddd',121,774],432]
# li[2] = li[2].replace('王','王八蛋') # 将列表中 索引 '2' 中的 '小王' 改成'小王八蛋'
# print(li)

# 需求四
# li = ['xiaobai','小二','小王',['abc','ddd',121,774],432]
# li[3][0] = li[3][0].upper() # 将列表中 索引 '3' 列表 中的 索引 '0' 'abc' 全都替换成大写
# print(li)

# 元组 又被叫做 只读列表,可循环查询,可切片
# 儿子不能改,孙子可能可以改,也就是说,元组内的列表整体不能改,但元组内的元素可以改
# tu = (1,2,3,'abvc',[2,3,4,'xiaobai'],'zhang')
# tu[4][3] = tu[4][3].upper() # 将元组中的索引'4' 中的列表 中的索引'3'中的'xiaobai'改为全大写
# print(tu)
# tu[4].append('2b') # 将元组中的索引'4' 中的列表 中 填加一个新的元素(字符串)
# print(tu)

# S.join() #将可迭代对象内的元素用其它字符串相连接,形成一个新的字符串
# 可以用这个方法.将列表转成字符串
#字符串用特殊字符串相连接
# s = 'ABCDEFG'
# j = '_'.join(s)
# print(j)

#列表转字符串
# tu = ['1,1,1,1','222','xiaobai'] #注意,如果列表中有 int 型元素,会报错.
# l = ''.join(tu)
# print(l)

# range 相当于一个连续的数字列表

# for i in range(0,10): # range(开始,结束) 如果从0开始可以不写0
# print(i)
#
# for i in range(10,0,-1): # 倒取,如果倒取偶数就把-1改成-2
# print(i)
#
# for i in range(0,10,2): #正取奇数
# print(i)
#
# for i in range(0,10,-1): #变态的面试题,结果是啥也不输出,也不报错.
# print(i)

猜你喜欢

转载自www.cnblogs.com/guanshou/p/11939386.html
今日推荐