4.python基础-列表,元组,字典,集合

列表

name_list = ["CG", "Tom", "Rose"]
print(name_list[0], name_list[2])

# 查
print(name_list.index("CG"))
print(name_list.count("CG"))
print(len(name_list))

# 存在
print("CG" in name_list)
print("CG2" not in name_list)

# 增
name_list.append("CG1")
print(name_list)
name_list.extend("CG2")
print(name_list)
name_list.extend(["CG2", "CG2.5"])
print(name_list)
name_list.insert(10, "CG3")
print(name_list)

# 删
# del name_list
# print(name_list)
del name_list[0]
print(name_list)
# 删除指定下标的数据,如果没有指定则是最后一个,并返回删除元素,超出报错
print(name_list.pop(len(name_list) - 1))
print(name_list)
# 移除特定元素,没有就报错
name_list.remove("CG1")
print(name_list)
# 清空列表
# name_list.clear()
# print(name_list)

# 修改
name_list[0] = "TomNew"
print(name_list)

name_list.reverse()
print(name_list)

# reverse true 降序 false 升序
# key 字典中用到
name_list.sort(key=None, reverse=True)
print(name_list)

# 复制
name_list2 = name_list.copy();
print(name_list2)

# 遍历
i = 0
while i < len(name_list):
    print(name_list[i])
    i += 1
    
j = None
for j in name_list:
    print(j)

元组

#元组和列表类似,但是只可以查找,不可以修改
tuple1 = (10,20,30)
print(tuple1)
tuple2 = (10,)
print(tuple2,type(tuple2))
tuple3 = (10)
print(tuple3,type(tuple3))

print(tuple1.index(10, 0, len(tuple1)))
print(tuple1.count(10))

#元组元素为列表时,列表数据可以修改
tuple4 = (10,20,["AAA","BB"])
tuple4[2][0] = "CG"
print(tuple4)

字典

dict1 = {"name": "CG", "age": 20, "gender": "男"}
print(dict1)
dict1["name"] = "CG1"
print(dict1)
dict1["stu_id"] = 1;
print(dict1)

del dict1["stu_id"]
print(dict1)

# dict1.clear()
# print(dict1)

print(dict1.get("name1", "CG"))
print(dict1.keys())
for i in dict1.keys():
    print(i)

print(dict1.values())
for j in dict1.values():
    print(j)

print(dict1.items())
for k in dict1.items():
    print(k[0], k[1])
for key, value in dict1.items():
    print(f"{key} = {value}")

集合

# 不允许重复,自动去重 无序
set1 = {10, 20, 30, 40, 50, 50}
set2 = set("hello world")
set3 = set()
print(set1)
print(set2)
print(set3,type(set3))


set1.add(60)
print(set1)
#增加序列
set1.update([80,70,90,100])
print(set1)

#不存在则报错
set1.remove(10)
print(set1)
#不存在不报错
set1.discard(101)
print(set1)
#随机删除某个元素并返回
print(set1.pop())

print(10 in set1)
print(101 not in set1)

通用操作

str1 = 'aa'
str2 = 'bb'
list1 = [1, 2]
list2 = [10, 20]
tuple1 = (1, 2)
tuple2 = (10, 20)
dict1 = {"name": "CG"}
dict2 = {"age": 21}


# +表示合并,不支持字典
print(str1 + str2)
print(list1 + list2)
print(tuple1 + tuple2)
# print(dict1 + dict2)

# *表示复制,不支持字典
print(str1 * 5)
print(list1 * 5)
print(tuple1 * 5)
# print(dict1 * 5)


# in 表示是否存在 not in 表示不存在
print("a" in str1)
print(1 in list1)
print(1 in tuple1)
print("name" in dict1)

print(max(str1), min((str1)))
print(max(list1), min(list1))

for i in range(1, 5, 1):
    print(i)

# 返回结果是元组,第一个是迭代对象的数据对应下标,第二个数据是迭代对象的数据
for i in enumerate(list1, start=1):
    print(i)

# 列表推导式
list1 = [i for i in range(10)]
print(list1)

# 带if列表推导式
list1 = [i for i in range(10) if i % 2 == 0]
print(list1)

# 多个for循环实习列表推导式
list1 = [(i, j) for i in range(1, 3) for j in range(3)]
print(list1)

# 字典推导式
dict1 = {i: i ** 2 for i in range(5)}
print(dict1)

list1 = ["name", "age", "gender", "id"]
list2 = ["CG", 18, "man"]
# 合并连个列表为一个字典
dict1 = {list1[i]: list2[i] for i in range(min(len(list1), len(list2)))}
print(dict1)

# 提取字典中目标数据
counts = {'MBP': 268, "HP": 125, "DELL": 201, "Lenovo": 199, "Acer": 99}
print({key: value for key, value in counts.items() if value > 200})

list1 = [1, 2, 3, 1, 2]
# 集合推导式
print({i ** 2 for i in list1})

f1 = 2;
print('%121d' % f1)

打包,拆包

a = 1
b = 2
print(a, b)


def addNum(a1, b1):
    a1 += 1
    b1 += 1
    global a
    a = 2
    return a1 + b1


print(addNum(a, b), a, b)

print(addNum(1, 2))


def newTeacher(*args):
    print(f"新老师信息是{args}")
    return list(args)


print(newTeacher("CG", 21, "man"))


def newStu(name, age, **kwargs):
    print(f'名字是{name},年龄是{age},更多信息是{kwargs}')
    return list(kwargs) + [name, age]


print(newStu(name="CG", age=21, sex="man"))


# 拆包
# 元组
def return_num():
    return 100, 200;


num1, num2 = return_num();
print(num1, num2)


# 字典
def return_str():
    return {"name": "CG", "sex": "man"}


dict1 = return_str()
key1, key2 = dict1
print(key1, key2, dict1[key1], dict1[key2])

a, b = 1, 2
a, b = b, a
print(a, b)

a = 1
b = a
print(id(a), id(b))
a = 2
print(id(a), id(b))

list1 = [1,2]
print(id(list1))
list1 += list1
print(id(list1))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值