Python基础学习(已有Java基础)2——列表与元组

一.列表
Python中的列表个人认为是一个比较重要的知识点,它有点类似JAVA中数组/列表的结合体,且使用到了堆栈的相关知识
1.赋值:注意,赋值的时候,可以多中数据类型,取出的时候,原来是什么数据类型就是什么数据类型;取出的方式类似数组通过下标遍历不过python还可以反遍历(注意,正向遍历索引是从0开始,反向是从-1开始

str5 = [21,33,'55',"66"]
print(str5[0]+33)    ====》 结果为数字54
print(str5[2])    ===》结果为字符串的55
print(str5[-2])  ===》结果为字符串55

2.修改:直接重新赋值即可 例如上面的str5[0]=66(既然是重新赋值,也可以改变数据类型)
3.添加

1.列表末尾添加:append 例如:str5.append(88)
2.在列表指定位置插入:insert(索引位置,值)  例如  str5.insert(0,”ss”)

4.删除

1.如果确定要删除的数据的索引位置用del    例如: del str5[0]
2.取出并删除元素用pop(索引位置,默认为最后一个元素)        例如 i = strs.pop()
3.不知索引位置,只知道要删除的用 remove()    例如 str5.remove(‘55’)  注意remove()只删除第一个指定的值

5.对列表的排序操作

1.按字母排序sort()这个和Java的排序是一样的,且是永久的——也就是说你对列表进行了sort操作以后,列表中的数据就排序了,后面除非你改排序方法,要不然就一直是这个排序了,该方法还可以反字母顺序排序,只需加入参数reverse=true
例子:str=['d','m','r','a']
str.sort()             ================>输出结果['a', 'd', 'm', 'r']
str.sort(reverse=True)  ================>输出结果['r', 'm', 'd', 'a']

2.既然有永久的,那么也就有临时排序。临时排序代表只在本次生效,下次再引用到该列表,列表的排序还是旧排序。  sorted()这个方法和sort类似,区别在于这个是临时排序,且该方法是一个独立的方法不是列表的方法,使用起来是sorted(列表)
例如str=['d','m','r','a']
print(sorted(str)) ================>输出结果['a', 'd', 'm', 'r']
print(str) ================>输出结果['d','m','r','a']

3.反转列表目前的顺序用reverse() 例如  str.reverse()  注意只做反转不做排序

4.取长度  len(str)

5.遍历列表,这个和java差不多,通过for 变量名 in 被变量对象:  (**注意for..in..后面有个冒号,且要注意缩进**)
例如:str=['d','m','r','a']
for i in str:
    print(i)

6.切片:获取列表的一段数据 str[开始索引:结束索引],默认第一个索引为0最后一个索引为最后一个元素,切片结果还是列表。
7.列表复制:
7.1.如果是通过切面复制,那么不是引用,是一个全新的列表,新旧不联系
str=['d','m','r','a']
str_copy = str[:]
str.append('aa')
str_copy.append('AA')
print(str)        ========》结果['d', 'm', 'r', 'a', 'aa']
print(str_copy)  ========》结果['d', 'm', 'r', 'a', 'AA']
7.2.如果是直接等于的话,那么是引用,新旧有联系
str=['d','m','r','a']
str_copy = str
str.append('aa')
str_copy.append('AA')
print(str)         ========》结果['d', 'm', 'r', 'a', 'aa', 'AA']
print(str_copy)    ========》结果['d', 'm', 'r', 'a', 'aa', 'AA']

二.元组:和列表的差别在于元素不可修改(增,删,改都不可以,除非重新赋值),且用括号表示

1.定义:
Deimesion = (55,66)
2.重新赋值只允许整个重新赋值(说明是对象的引用)
3.遍历参考列表
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值