Python 学习第二期

time :5-02

列表(数组)

第一种建表输出:

a=['he','xd','90']
for i in range(3):
    print(a[i],'',end='')

输出结果:he xd 90

第二种:

a=list(['he','xd','90'])

获取列表的索引(数组的下标)

正向索引:0 1 2 3 .... n-1

逆向索引:-n -n+1 .... -1

格式:变量.index(列表元素)

a=['he','xd','90']
print(a.index('he'))

输出结果:0

在范围之内进行寻找:

a=['he','xd','90']
print(a.index('he',开始下标,结束下标))

time :5-03

切片索引

打印切片范围之内的元素(带括号)

a=['1','2','3','4','6']
print(a[起始下标:结束下标:步长])

当步长为负数时,从起始下标开始逆序输出。

a=['1','2','3','4','6']
print(a[::-1])

输出结果:['6', '4', '3', '2', '1']


time :5-06

判断某个元素是否在列表中:

print('p' in 'pyhton')

返回 Ture

列表的操作

1, append() 在列表最后面加入一个元素,一个列表也可做为一个元素添加进去

lis=[10,20,30,40]
lis2=['hello','world']
lis.append(100)
lis.append(lis2)
print(lis)

结果:[10, 20, 30, 40, 100, ['hello', 'world']]

2, extend() 直接添加,即使是列表也是分别添加

lis=[10,20,30,40]
lis2=['hello','world']
lis.append(100)
lis.extend(lis2)
print(lis)

结果:[10, 20, 30, 40, 100, 'hello', 'world']

3, insert(位置,元素) 在列表任意位置添加元素,在该位置添加元素后,原位置元素后移

lis=[10,20,30,40]
lis.insert(2,100)
print(lis)

结果:[10, 20, 100, 30, 40]


time :5-07

切片操作

(1)在列表任意位插入新的元素或列表,把插入位置后面的元素覆盖删除替换

lis=[10,20,30,40]
lis2=['python','study']
lis[1:]=lis2#lis[起始下表:末尾下标]
print(lis)

输出结果:[10, 'python', 'study']

(2)保留指定区间内的元素,使之组成新的列表

lis=[10,20,30,40,50]
lis_new=lis[1:3]
print(lis_new)

输出结果:[20, 30]、

(3)删除不产生新列表的操作,可理解为区间元素用空列表替换,即完成删除操作

lis=[10,20,30,40,50]
lis[1:3]=[]
print(lis)

输出结果:[10, 40, 50]

列表元素的删除

1, remove() 一次删除一个元素,重复元素只删除第一个。

lis=[10,20,30,40,50,30]
lis.remove(30)
print(lis)

输出结果:[10, 20, 40, 50, 30]

2, pop() 根据索引(下标)移除元素,若不指定参数,将删除最后一个元素

lis=[10,20,30,40,50,30]
lis.pop(1)#下标
lis.pop()
print(lis)

输出结果:[10, 30, 40, 50]

3, clear() 清除列表所有元素使之为空表;del 删除列表


time :5-08

列表元素的修改

(1)可以看成覆盖操作

(2)相似的切片操作(覆盖)

lis=[10,20,30,40,50,30]
lis[1]=200#lis[1:2]=[200]
print(lis)

输出结果:[10, 200, 30, 40, 50, 30]

列表元素的排序

(1) sort() 调用函数,从小到大排序,或指定操作 reverse=True 进行升序排列;指定操作 reverse=True 可进行降序排列。

lis=[20,50,5,60,40,100]
lis2=[20,50,5,60,40,100]
lis.sort()
lis2.sort(reverse=True)
print(lis)
print(lis2)

输出结果:[5, 20, 40, 50, 60, 100] [100, 60, 50, 40, 20, 5]

(2) sorted() 内置函数排序会产生新列表

lis=[20,50,5,60,40,100]
lis_new=sorted(lis)
lis_new2=sorted(lis,reverse=True)
print(lis_new)
print(lis_new2)

结果同上。

列表生成式

lis=[i for i in range(1,10)]#第一个'i'为真正的列表元素
print(lis)
lis2=[i*2 for i in range(1,10)]
print(lis2)

输出结果:[1, 2, 3, 4, 5, 6, 7, 8, 9] [2, 4, 6, 8, 10, 12, 14, 16, 18]

字典

概念:

比如有份成绩表数据,语文:79,数学:80,英语:92,这组数据看上去像两个列表,但这两个列表的元素之间有一定的关联关系。如果单纯使用两个列表来保存这组数据,则无法记录两组数据之间的关联关系。为了保存具有映射关系的数据,Python 提供了字典,字典相当于保存了两组数据,其中一组数据是关键数据,被称为 key;另一组数据可通过 key 来访问,被称为 value。形象地看,字典中 key 和 value 的关联关系如图所示,即一一对应:(个人认为类似于结构体)

 

由于字典中的 key 是非常关键的数据,而且程序需要通过 key 来访问 value,因此字典中的 key 不允许重复。

创建:

基本格式:

lis={'key_name 1':value1,'key_name 2':value2}#第一种创建方式
print(lis)
lis2=dict{ key_name1=value1, key_name2=value2}#第二种内建函数
print(lis2)

其中,value的类型是多样的,可为整型和字符串型等。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值