七、python基础:列表(Lits)

一:序列

1、序列是python最基本的数据结构,在python中,有6个序列的内置类型,最常见的是列表和元组。

2、序列中的每个元素都会分配位置,即有对应的索引值,第一个元素的索引为0,第二个元素的索引为1......

3、序列都可以进行索引、切片、加、乘、检查成员等操作

 

二:列表

1、与字符串一样,列表的索引从0开始,可以进行组合,切片等操作

2、列表可以同时存储不同类型的数据,创建一个列表,只需用逗号分隔每个元素,然后用方括号括起来即可

 

三:列表的增:

1、append( )     在列表的最后添加元素

格式:列表名.append(元素)

 

2、insert( )      向列表的指定位置添加元素

格式:列表名.insert(位置,元素)

3、extend( )    将一个列表的元素扩充到另一个列表中

格式:列表1.extend(列表2)     将列表2扩充到列表1

4、 +     合并列表

 

四:列表的删:

1、pop( )      删除列表的最后一个元素,并返回该元素的值

格式:列表名.pop( )

2、remove( )    删除列表中的指定元素,没有返回值

格式:列表名.remove(元素) 

3、del    删除指定索引值的元素

格式:del  列表名[索引值]       删除列表中索引值为该值的元素

 

五:列表的改:

1、index( )    得到列表内某个元素的索引

格式:列表名.index(元素)

2、列表[索引]=新元素     修改列表内指定索引值的元素

 

六、列表的查:

1、while循环,显示出列表内所有元素

list_=[1,2,3,"abc","def"]      #定义一个列表list_
i=0                            #定义标志位i
lenght=len(list_)             #获取列表的长度
while i<lenght
    print(list_[i])            #list_[i]即为列表内下标为i的元素
    i+=1

2、for循环,遍历出列表内所有元素

names=["小明","小李","小刘"]           #定义一个列表names
for  item  in  names:                 #循环列表
    print(item)                       #打印出列表内所有元素

 

七、列表的其他操作

           

列表也可以进行切片

 

八:列表版名片管理系统

# coding:utf-8

# 1、提示给用户的菜单信息
print("="*50)
print("\t     名片管理系统 v1.0版本")
print("="*50)
print("请输入序号选择相应操作:")
print(" 1 : 添加名片")
print(" 2 : 删除名片")
print(" 3 : 修改名片")
print(" 4 : 查询指定名片")
print(" 5 : 查询全部名片")
print(" 6 : 退出系统")
print("="*50)

# 定义一个列表,用来存储名片
#names = []

names = ["a","b","c","d","aa","bb","cc","dd"]  #系统测试

while True:
	# 2、获取用户所选择的菜单信息
	print()   #空格
	print()
	num = int(input("请选择您要进行的操作:"))   #将收集到的信息转为int型    

	# 3、根据用户所选择的菜单信息执行相应的功能
	if num == 1:
		# 添加新的名片
		print()
		print()
		print()
		print("="*50)
		print("\t\t  添加名片")               #显示当前进行的操作
		print("="*50)
		print()
		new_name = input("请输入新的名片:") 	 # 获取用户所输入的名片信息
		if  new_name in names:              #判断用户是否已存在,若存在则
			print()
			print("该用户已存在,请重新输入")
		else:                                #若不存在则添加新用户
			names.append(new_name)
			print()
			print("添加新名片[%s]成功!" % new_name)
		#print(names)
	elif num == 2:
		# 删除一个名片
		print()
		print()
		print()
		print("="*50)
		print("\t\t  删除名片")                              #显示当前进行的操作
		print("="*50)
		print()
		print("当前的名片有:[%s]"%names)              		#显示所有名片信息
		print()
		del_name = input("请输入删除的名片") 			 	    #获取用户所输入的名片信息
		print()
		sure_or_no = input("确定删除[%s]吗\t y/n"%(del_name)) #再次确认是否要删除
		#if sure_no == "Y" or sure_no == "y" :
		#	names.remove(del_name)           
		#	print()
		#	print("名片《%s》已成功删除!"%del_name)
		if sure_or_no == "y":                       #确定则删除
			names.remove(del_name)
			print()
			print("名片[%s]已成功删除!"%del_name)    #提示用户删除成功
		#elif sure_no == "n":
		#	print("删除失败")	
		else :                                       #不确定则不删除
			print()
			print("删除失败")	                     #提示用户删除失败
	elif num == 3:
		# 修改一个名片
		print()
		print()
		print()
		print("="*50)
		print("\t\t  修改名片")                       #显示当前进行的操作
		print("="*50)
		print()
		print("当前的名片有:[%s]"%names)              #显示所有名片信息
		print()
		mod_name = input("请输入想要修改的名片:")       #获取想要修改的名片信息 
		print()
		after_mod_name = input("请输入该名片的新信息:")  #获取修改后的新名片信息
		for item in names:
			if after_mod_name==item:
				print()
				print("改名片已存在,请重新输入")
				break
		else:
			names[names.index(mod_name)] = after_mod_name         #修改名片
			print()
			print("[%s]已成功修改为[%s]"%(mod_name,after_mod_name)) #提示用户修改成功
	elif num == 4:
		# 查询指定的名片
		print()
		print()
		print()
		print("="*50)
		print("\t\t  查询指定名片")              #显示当前进行的操作
		print("="*50)
		print()
		find_name = input("请输入您要查询的名片:") #获取想要查询的名片信息
		print()
		if find_name in names:                   #判断该名片是否已存在
			print()
			print("此人在名片系统")                #若存在则
		else:
			print()
			print("此人不在名片系统中")            #若不存在则
	elif num == 5
		# 查询所有的名片
		print()
		print()
		print()
		print("="*50)
		print("\t\t  查询所有名片")              #显示当前进行的操作
		print("="*50)
		print()
		num=len(names)
		print("现在有名片%s,\n共%s张"%(names,num))                                    #打印出所有名片
		
	elif num == 6: 
	# 退出系统
		break
	else:
		print()
		print("您输入有误,请重新输入!")















 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值