python基础教程Day04

列表
列表和字典,比我们学过的“整数、浮点数、字符串”更加高级,更有“包容性”。

列表和字典的作用,就是可以帮我们存储大量数据,让计算机去读取和操作。

// A code block

students = ['党志文', '浦欣然', '罗鸿朗', '姜信然', '居俊德', '宿鸿福', '张成和', '林景辉']
for i in students:
    print(i+'在不在?')
    
var foo = 'bar';

运行结果:

// An highlighted block

党志文在不在?
浦欣然在不在?
罗鸿朗在不在?
姜信然在不在?
居俊德在不在?
宿鸿福在不在?
张成和在不在?
林景辉在不在?

var foo = 'bar';

一个列表需要用中括号[ ]把里面的各种数据框起来,里面的每一个数据叫作“元素”。每个元素之间都要用英文逗号隔开。

[‘小明’,‘小红’,‘小刚’]就是一个列表。

从列表提取单个元素
列表中的各个元素,好比教室里的某排学生那样,是有序地排列的,也就是说,每个元素都有自己的位置编号(即偏移量)。

偏移量是从0开始的,而非我们习惯的从1开始

// A code block

students = ['小明','小红','小刚']
print(students[0])    #输出小明

var foo = 'bar';
// An highlighted block

小明

var foo = 'bar';

从列表提取多个元素

// A code block

list2 = [5,6,7,8,9]

print(list2[:])
# 打印出[5,6,7,8,9]
print(list2[2:])
# 打印出[7,8.9]
print(list2[:2])
# 打印出[5,6]
print(list2[1:3])
#打印出[6,7]
print(list2[2:4])    
#打印出[7,8]

var foo = 'bar';

给列表增加/删除元素
增加:append()语句

// A code block

students = ['小明','小红','小刚']
students.append('小美')
print(students)   #增加小美

var foo = 'bar';
// An highlighted block

['小明', '小红', '小刚', '小美']

var foo = 'bar';

删除:del 列表名[元素的索引]

// A code block

students = ['小明','小红','小刚','小美']
del students[0]
print(students)  #删除小明

var foo = 'bar';
// An highlighted block

['小红', '小刚', '小美']

var foo = 'bar';

remove(‘字符’)需要指定删除的元素

// A code block

students = ['小明','小红','小刚','小美']
students.remove('小红')
print(students)

var foo = 'bar';
// An highlighted block

['小明', '小刚', '小美']

var foo = 'bar';

字典
列表中的元素是自成一体的,而字典的元素是由一个个键值对构成的,用英文冒号连接。如’小明’:95,其中我们把’小明’叫键(key),95叫值(value)。

// A code block

scores = {'小明':95,'小红':90,'小刚':90}
print(scores['小红'])    #输出95

var foo = 'bar';
// An highlighted block

95

var foo = 'bar';

给字典增加/删除元素

// A code block

scores = {'小明':95,'小红':90,'小刚':90}
del scores['小刚']   #删除了小刚(键,值都删除了)
scores['小刚']=92    #增加了小刚,值(value):92
scores['小美']=85    #增加了小美,值(value):85
print(scores)

var foo = 'bar';
// An highlighted block

{'小明': 95, '小红': 90, '小刚': 92, '小美': 85}

var foo = 'bar';

列表和字典的不同点

// A code block

students1 = ['小明','小红','小刚']
students2 = ['小刚','小明','小红']
print(students1 == students2)   #False

scores1 = {'小明':95,'小红':90,'小刚':100}
scores2 = {'小刚':100,'小明':95,'小红':90}
print(scores1 == scores2)   #True

var foo = 'bar';
// An highlighted block

False
True

var foo = 'bar';

列表中的元素是有自己明确的“位置”的,所以即使看似相同的元素,只要在列表所处的位置不同,它们就是两个不同的列表

字典相比起来就显得随和很多,调动顺序也不影响。因为列表中的数据是有序排列的,而字典中的数据是随机排列的

列表字典的嵌套运用

// A code block

# 最外层是大括号,所以是字典嵌套列表,先找到字典的键对应的列表,再判断列表中要取出元素的偏移量
students = {
    '第一组':['小明','小红','小刚','小美'],
    '第二组':['小强','小兰','小伟','小芳']
    }
print(students['第一组'][3])
#取出'第一组'对应列表偏移量为3的元素,即'小美'

# 最外层是中括号,所以是列表嵌套字典,先判断字典是列表的第几个元素,再找出要取出的值相对应的键
scores = [
    {'小明':95,'小红':90,'小刚':100,'小美':85},
    {'小强':99,'小兰':89,'小伟':93,'小芳':88}
    ]
print(scores[1]['小强'])
#先定位到列表偏移量为1的元素,即第二个字典,再取出字典里键为'小强'对应的值,即99。

var foo = 'bar';
// An highlighted block

小美
99

var foo = 'bar';

元组
元组既然是不可变(immutable)对象,自然也就没有增加,删除元素的方法。

// A code block

a = () # 空元组对象
b = (1,'xiaoming',29.5,'17312662388')
c = ('001','2019-11-11',['小美','小明'])

var foo = 'bar';

因为元组不可以改变,但可以重新定义

// A code block

a=(0,1,2,3)

a=(0,'hello',2,3)  #重新定义
print(a)

var foo = 'bar';
// An highlighted block

(0, 'hello', 2, 3)

var foo = 'bar';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值