python数据结构(元组、列表、字典、序列)

目录

一、元组tuple

  (1)元组的创建和访问

(2)元组的遍历

二、列表list

(1)列表的创建

(2)遍历方法跟tuple一样

(3)列表的查找、排列、反转

三、字典  键-值(key- value)

(1)字典的创建

(2)字典的访问

(3)全局字典sys.modules模块

四、序列


一、元组tuple

(1)元组的创建和访问

tuple=(元素1,元素2,……)

1.定义的空元组:tuple=()

2.元组的初始化示例:tuple=("apple","banana","grape","orange")

3.创建一个唯一元素的元组,需在元素后面加逗号:tuple=("apple",)若不加逗号会被误认为字符串的赋值

4.元组从0开始计数。print(tuple[0])是打印元组中的第一个元素

分片索引:tuple[1:3]从第二个元素到第三个元素(不包含第四个元素)tuple[0:-2]从第一个元素到倒数第二个元素(不包含倒数第二个元素)

负数索引:tuple[-2]倒数第二个元素

5.元组创建后内部元素的值不能修改,删除,添加

6.二元元组:tuple=(('t1','t2'),('t3','t4'))

tuple[0][1]元组的第一个元组的第二个元素

打包,解包

#打包
tuple=("apple","banana","grape","orange")
#解包
a,b,c,d=tuple
print(a,b,c,d)

结果:apple banana grape orange

(2)元组的遍历

range([start,]stop[,step]) 

start默认值为0

tuple=(("apple","banana"),("grape","orange"),("watermelon",),("grapaefruit",))
for i in range(len(tuple)):
    print("tuple[%d] :"%i,end=' ')
    for j in range(len(tuple[i])):
        print(tuple[i][j],end=' ')
    print()

结果:

tuple[0] : apple banana 
tuple[1] : grape orange 
tuple[2] : watermelon 
tuple[3] : grapaefruit 

tuple=(("apple","banana"),("grape","orange"),("watermelon",),("grapaefruit",))
for i in tuple:
    for j in i:
        print(j)

结果:

apple
banana
grape
orange
watermelon
grapaefruit

二、列表list

(1)列表的创建

list=[元素1,元素2……]

1.列表中元素可以添加:append(),删除remove(),修改

list.append("元素")末尾插入

list.insert(1,"元素")在第二个位置插入元素

list.remove("元素")删除元素

list.pop()弹出最后一个进入列表的元素

2.元组从0开始计数。print(list[0])是打印元组中的第一个元素

3.连接

list1.extend(list2)

list1=list1+list3

list1 +=["元素"]

list1=["元素"]*2

(2)遍历方法跟tuple一样

(3)列表的查找、排列、反转

list.index("元素"):查找元素的位置

print("orange" in list):返回值True/False

list.sort():排序

list.reverse():反转

三、字典  键-值(key- value)

(1)字典的创建

1.dictionary={key1:value1,key2:value2,……}

print(dictionary["key1"])输出value1

2.print("%s,%(a)s,%(b)s"%{"a":"apple","b":"banana"})

输出:{'a':'apple','b':'banana'},apple,banana

%s:输出这个字典的内容

(2)字典的访问

1.增、改:dictionary["key"]="value"

2.删:del(dictionary["key"])

弹出:dictionary.pop("key")

清除:dictionary.clear()

3.dictionary.keys()输出['a','b','c']

dictionary.values()

dictionary.get("key","F")查找key的值,不存在就返回F,存在返回对应的value

dict.update(dict2)把dict2中的内容更新到dict中(dict中有的不变,没有的添加,相同的变更成dict2的内容)

dictionary.setdefault("key")添加键,值为None

排列:sorted(dictionary.items(),key=lambda d:d[0])

复制:

dict2=copy.deepcopy(dict)深拷贝:dict2的数据改变时dict的数据不变

dict3=copy.copy(dict)#dict3=dict.copy(dict)浅拷贝:dict3的数据改变时dict的数据也改变

(3)全局字典sys.modules模块

四、序列

索引和切片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值