python通俗学习:【列表与字典】

第一周:列表与字典相关知识

1、计算机利用数据的三种方式:
1.1直接使用数据【print()】
1.2计算和加工数据【print(数学运算)】
1.3用数据做判断【if…elif…else语句】

2、列表

列表很包容,元素可以是整数、字符串、浮点数,也可以是列表。
2.1 从列表中提取单个元素

若提取“小明”,则:

Student=[“小明”,”小红”,”小刚”]
Print(student[0])

记得:print打印时定要带上列表名,且偏移量不用带双引号。

2.2 从列表中提取多个元素

口诀:左右空,取到头。左要取,右不取。
若提取小明、小红两个元素,则:

Student=[“小明”,”小红”,”小刚”]
Print(student[ :2]

若取小红元素,则:

Print(student[1:2])==[“小红”] 或者 print(student[1])==小红(即一个是列表一个是元素)

2.3 给列表增加或者删除元素
即使用append()函数来增加元素(元素可以是字符串、整数、浮点数、列表本身)
若在小明、小红、小刚中间增加小美,则:

Student=[“小明”,”小红”,”小刚”]
Student.append(“小美”)【append函数要记得每次只能够增加一个参数】
Print(student)

若想要将小刚从列表中删除,则:

Student=[“小明”,”小红”,”小刚”,”小美”]
Del  student[2]
Print(student)

即使用del 列表名[偏移量]
【新知识】
如果想要将两个列表合并为一个列表,则可以是两个列表相加获得:(可由字符串相加变成完整语句记忆)
如:

A=[1,2,5,8,3]
B=[2,3,5,7,6]
C=a+b
Print(c)
C=[1,2,5,8,3,2,3,5,7,6]

或者

A.extend(b)————切记不是append
Print(a)
(但是这种方法会覆盖原始list,所以说运用此方法合并列表时应当先对某一列表进行赋值)
>>>
A=[1,2,5,8,3,2,3,5,7,6]

又或者

A[len(A):len(A)]=B————意思是将B插入到A中
Print(A)
>>>
A=[1,2,5,8,3,2,3,5,7,6]

【新知识】
当对一个列表中的元素进行排顺序时(一般是从小到大排列),则使用sort()语句。
如:

对列表C=[1,2,5,8,3,2,3,5,7,6]进行排列
则C.sort()
Print(C)
>>>
[1, 2, 2, 3, 3, 5, 5, 6, 7, 8]

【新知识——列表生成式】
例如:生成一副扑克牌

Def card():
Color=['红心', '方块', '梅花','黑桃']
  num = list(range(2, 11))
  num.extend('JQKA')  # 通过两行代码,生成一个 2-A 的数字列表。
  return [(x, y) for x in color for y in num ]# 用列表生成式完成扑克牌的生成。
print(cards())

列表生成式:

如果要生成list[1,2,3,4,5,6,7,8,9,10]可以用list(range(1,11))
但是要想生成[1x1,2x2,3x3,....,8x8,9x9,10x10]则可以用
[a*a for a in range(1,11]
如果仅筛选出偶数的平方,则
[a*a for a in range(1,11if a%2==0]
同时,还可以使用两层循环,生成全排列:
[m + n for m in 'ABC' for n in 'XYZ']
['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']

3、字典

3.1 从字典中提取元素
若想要打印出小红的成绩,则:

Score={“小明”:85,”小红”:90,”小刚”:95}
Print(score[“小红”])

应注意:和列表相同,字典也用中括号表示,但是由于字典没有偏移量,所以中括号中应当使用键的名称。
3.2 给字典增加或者删除元素
删除某个元素使用del 字典名[键],增加某个元素或者替换某个键的值使用字典名[键]=值
若把请你把小刚的成绩改成92分,新增小美的85分成绩,则:

Score={“小明”:85,”小红”:90,”小刚”:95}
Del score[“小刚”]
Score[“小刚”]=92
Score[“小美”]=85
Print(score)

4、字典与列表的异同
4.1 字典与列表的不同点
列表有偏移量,而字典没有偏移量。所以,两个列表中,元素的偏移量不同,则该两个列表不相等;两个字典中,只要键值对相同,即使元素的位置不一样,但两个字典也相等。
4.2 字典与列表的相同点
① 列表和字典相同即在修改元素或者值时,都可以用赋值语句重新赋值以获得新的元素或者值
② 均支持任意嵌套
列表套列表

字典套字典
若从以下取出小芳的成绩,则:

scores = { '第一组':{'小明':95,'小红':90,'小刚':100,'小美':85},'第二组':{'小强':99,'小兰':89,'小伟':93,'小芳':88}}
print(scores['第二组']['小芳'])

【一定要记住是中括号】
首先按照字典的正确写法,有完整的键值对,且{}中包含{}。并且大字典中也使用逗号隔开,小字典中也要有完整的键值对。打印中只使用中括号,且不带逗号。
字典列表互相嵌套
字典嵌套列表时,先确定键在确定偏移量。列表嵌套字典时,先确定偏移量在确定键。
公式为:print(列表名[偏移量][键]或者print(字典名[键][偏移量]

续更(一周一篇,分享我自己的心得,欢迎交流)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值