PYTHON-变量进阶(列表、元组、字典)

高级变量

非数字型变量:字符串、列表、元组、字典
在这里插入图片描述

关键词、函数、方法

关键词后面不带括号: keyword.kwlist
函数可直接调用: 函数名(参数)
方法需要通过对象调用,也是针对该对象进行的操作: 对象.方法名(参数)

列表

定义列表name_list = [“zhangsan”,18,1.75]
查看列表功能name_list+Tab
在这里插入图片描述
在这里插入图片描述

列表常用操作

在这里插入图片描述
在这里插入图片描述

name_list = ["zhangsan" , "lisi" , "wangwu"]
name_list2 = ["孙悟空" , "猪八戒" , "唐僧"]

print(name_list[2])

#查找
print(name_list.index("lisi"))

列表循环遍历

Python专门提供了迭代iteration遍历

name_list = ["张三" , "李四" , "王五" , "王小二"]

#使用迭代遍历列表
for my_name in name_list:

    print("我的名字叫 %s" % my_name)

列表应用场景

在这里插入图片描述

元组

定义元组info_tuple = (“zhangsan”,18,1.75)
查看元组功能info_tuple+Tab
在这里插入图片描述
元组只有一个元素时,需要在后面加逗号:info_tuple = (50, )

元组常用操作

在这里插入图片描述

元组循环遍历

在这里插入图片描述

info_tuple = ("zhangsan" , 18 , 1.75)

#使用迭代遍历元组
for my_info in info_tuple:

    #使用格式字符串拼接 my_info 这个变量不方便!
    #因为元组中通常保存的数据类型不同!
    print(my_info)

元组应用场景

在这里插入图片描述

info_tuple = ("小明" , 21 , 1.85)


#格式化字符串后面的()本质上是一个元组
print("%s 年龄是 %d 身高是 %.2f" % info_tuple)

#使用元组可以拼接一个字符串
info_str = "%s 年龄是 %d 身高是 %.2f" % info_tuple

print(info_str)

元组月列表相互转换

list(元组)、tuple(列表)

字典

定义字典xiaoming = {“name”:“小明”,“age”:18}
查看字典功能xiaoming+Tab
在这里插入图片描述

字典常用操作

在这里插入图片描述
在这里插入图片描述

xiaoming_dict = {"name": "小明"}

#1、取值
print(xiaoming_dict["name"])

#2、增加/修改
#如果key不存在,会新增键值对
xiaoming_dict["age"] = 18
#如果key存在,会修改已经存在的键值对
xiaoming_dict["name"] = "小小明"

#3、删除
xiaoming_dict.pop("name")


print(xiaoming_dict)
xiaoming_dict = {"name": "小明",
                 "age": 18}

#1、统计键值对数量
print(len(xiaoming_dict))

#2、合并字典
temp_dict = {"height": 1.75,
             "age": 20}
#注意:如果被合并的字典中包含已经存在的键值对,会覆盖原有的键值对
xiaoming_dict.update(temp_dict)

#3、清空字典
xiaoming_dict.clear()

print(xiaoming_dict)

字典循环遍历

在这里插入图片描述

xiaoming_dict = {"name": "小明",
                 "qq": "123456",
                 "phone": "10086"}

#迭代遍历字典
#变量k是每一次循环中,获取到的键值对key
for k in xiaoming_dict:

    print("%s - %s" % (k , xiaoming_dict[k]))

字典应用场景

在这里插入图片描述

#使用多个键值对,存储,描述一个物体的相关信息
#将多个字典放在一个列表中,再进行遍历
card_list = [
    {"name": "张三",
     "qq": "123456",
     "phone": "110"},
    {"name": "李四",
     "qq": "654321",
     "phone": "10086"}
]

for card_info in card_list:

    print(card_info)
students = [
    {"name": "阿土"},
    {"name": "小美"}
]

#在学员列表中搜索指定的姓名
find_name = "李四"

for stu_dict in students:

    print(stu_dict)

    if stu_dict["name"] == find_name:

        print("找到了 %s" % find_name)

        #如果已经找到,应该直接退出循环,而不再遍历后续的元素
        break

else:
    #如果希望搜索列表时,所有的字典检查之时,都没有发现需要搜索的目标
    #还希望得到一个统一的提示!
    print("抱歉没有找到 %s" % find_name)

print("循环结束")
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值