首页 > 编程语言 >【python入门之基本数据类型】---基本数据类型(字典、布尔)【三】

【python入门之基本数据类型】---基本数据类型(字典、布尔)【三】

时间:2023-11-28 19:45:22浏览次数:39  
标签:info executed name python 数据类型 --- print hobby empty

【五】字典类型(dict)

【1】作用

  • 如果我们需要用一个变量记录多个值,但多个值是不同属性的
    • 比如人的姓名、年龄、身高,用列表可以存,但列表是用索引对应值的,而索引不能明确地表示值的含义
  • 这就用到字典类型,字典类型是用key:value形式来存储数据
    • 其中key可以对value有描述性的功能,能够明确的描述详细信息

【2】定义

  • 大括号括起来,内部可以存放多个元素,元素与元素之间使用逗号隔开,是以K:V键值对的形式存储
    • K:
      • 是对V的描述性信息(一般情况是字符串)
    • V:
      • 真正的数据,其实相当于变量值,也是任意的数据类型
person_info = {'name': 'Jack', 'age': 18, 'height': 185.3, 'hobby': ["动漫", "小说"]}
print(person_info)  # {'name': 'Jack', 'age': 18, 'height': 185.3, 'hobby': ['动漫', '小说']}
print(type(person_info))  # <class 'dict'>

【3】使用

(1)字典取值(键取值)

  • 字典不能通过索引取值,只能通过字典的K取值
person_info = {'name': 'Jack', 'age': 18, 'height': 185.3, 'hobby': ["动漫", "小说"]}

# 字典取值(键取值)
name = person_info['name']
print(name)  # 输出结果:Jack

age = person_info['age']
print(age)  # 输出结果:18

(2)字典嵌套及取值

# 字典嵌套及取值
student1 = {'name': 'Tom', 'age': 18}
student2 = {'name': 'Jerry', 'age': 19}
classroom = {'student1': student1, 'student2': student2}

# 取值
student1_name = classroom['student1']['name']
print(student1_name)  # 输出结果:Tom

student2_age = classroom['student2']['age']
print(student2_age)  # 输出结果:19
小习题:
info = {
    'name': 'Jack',
    'addr': {
        '国家': '中国',
        'info': [666, 999, {'编号': 466722, 'hobby': ['read', 'study', 'music']}]
    }
}

# 1. music在大字典里的位置
d1 = info['addr']  
print(d1)
# {'国家': '中国', 'info': [666, 999, {'编号': 466722, 'hobby': ['read', 'study', 'music']}]}

# 2. music在小字典里的位置
d2 = d1['info']  
print(d2)
# [666, 999, {'编号': 466722, 'hobby': ['read', 'study', 'music']}]

# 3. music在列表里的位置
d3 = d2[2]  
print(d3)
# {'编号': 466722, 'hobby': ['read', 'study', 'music']}

# 4. music在小字典里的位置
d4 = d3['hobby']  
print(d4)
# ['read', 'study', 'music']

# 5. music在列表里的位置
d5 = d4[2]  
print(d5)
# music

# 整合
d6 = info['addr']['info'][2]['hobby'][2]
print(d6)
# music

##作业:    .get()情况可以多加注意,学习
取值:
print("my name is {} my contry is {} 我的编号 {} 我的爱好 {} 我的幸运数字 {}")

print(info['name'])
print(info['addr'].get('国家'))
print(info['addr'].get('info')[2].get('编号'))
print(info['addr'].get('info')[2].get('hobby')[1])
name = info['name']
country = info['addr'].get('国家')
id = info['addr'].get('info')[2].get('编号')
hobby = info['addr'].get('info')[2].get('hobby')[1]
lucky_id= info['addr'].get('info')[0]

print('my name is {}, my country is {}, my id is {}, my hobby is {}, my lucky number is {}'.format(name,country,id,hobby,lucky_id))


【六】布尔类型(bool)

【1】作用

  • 布尔类型用于表示逻辑值,只有两个取值:True 和 False。
  • 在编程中,布尔类型经常用于控制程序的流程,例如条件判断、循环等。

【2】定义

  • 布尔类型只有两个取值:True 和 False。在 Python 中,首字母必须大写
  • 布尔值的命名规范:结果可能是布尔值的情况,一般都采用 is 开头 命名
# 定义布尔类型
is_student = True
is_adult = False

【3】使用

(1)条件判断

  • 布尔类型常常用于条件判断,例如 if 语句中
# 使用布尔类型进行条件判断
is_raining = True    #定义一个值为true

if is_raining:       #判断定义的值
    print("Remember to bring an umbrella!")
else:
    print("Enjoy the weather!")

(2)比较运算

  • 布尔类型还可以用于表达式的判断,例如比较运算
# 使用布尔类型进行比较运算
x = 5
y = 10

is_greater = x > y
print(is_greater)  # 输出结果:False

【补充】Python中的真与假

  • 在 Python 中,布尔类型的 True 表示真,False 表示假。
  • 在条件判断和逻辑运算中,通常会使用布尔值来确定程序的执行流程。

(1)假的情况(False)

  • 布尔值为 False: 显而易见,False 本身就表示假。
is_false = False
if is_false:
    print("This won't be executed.")
else:
    print("This will be executed.")
  • 数字零: 数字类型中,整数或浮点数中的零被视为假。
zero_integer = 0
zero_float = 0.0

if zero_integer or zero_float:
    print("This won't be executed.")
else:
    print("This will be executed.")
  • 空字符串: 空字符串 '' 被视为假。
empty_string = ''

if empty_string:
    print("This won't be executed.")
else:
    print("This will be executed.")
  • 空列表、空字典、空集合等: 对于容器类型,如果它们为空,被视为假。
empty_list = []
empty_dict = {}
empty_set = set()

if empty_list or empty_dict or empty_set:
    print("This won't be executed.")
else:
    print("This will be executed.")

(2)真的情况(True)

  • 布尔值为 True: True 本身表示真。
is_true = True
if is_true:
    print("This will be executed.")
else:
    print("This won't be executed.")
  • 非零数字: 除了零之外的任何整数或浮点数都被视为真。
non_zero_integer = 42
non_zero_float = 3.14

if non_zero_integer and non_zero_float:
    print("This will be executed.")
else:
    print("This won't be executed.")
  • 非空字符串: 非空字符串被视为真。
non_empty_string = 'Hello, World!'

if non_empty_string:
    print("This will be executed.")
else:
    print("This won't be executed.")
  • 非空列表、非空字典、非空集合等: 如果容器类型中包含元素,被视为真。
non_empty_list = [1, 2, 3]
non_empty_dict = {'key': 'value'}
non_empty_set = {1, 2, 3}

if non_empty_list and non_empty_dict and non_empty_set:
    print("This will be executed.")
else:
    print("This won't be executed.")

标签:info,executed,name,python,数据类型,---,print,hobby,empty
From: https://www.cnblogs.com/queryH/p/17862796.html

相关文章

  • 【python入门之基本数据类型】---基本数据类型(元组、集合)【四】
    【七】元组类型(tuple)【1】作用元组(tuple)是一种不可变的序列类型,类似于列表,用于存储多个有序元素。元组与列表的主要区别在于元组的元素不能被修改、删除或添加,是不可变的数据类型。元组通常用于存储相关联的数据,保持数据的完整性。【2】定义元组通过小括号()......
  • 【Python爬虫】第11篇:Mongodb数据库进阶使用。从0到scrapy高手笔记(附代码,可自取)
    本文主要学习一下关于爬虫的相关前置知识和一些理论性的知识,通过本文我们能够知道什么是爬虫,都有那些分类,爬虫能干什么等,同时还会站在爬虫的角度复习一下http协议。全套笔记和代码自取地址:请移步这里感兴趣的小伙伴可以自取哦,欢迎大家点赞转发~共8章,37子模块Mongodb数......
  • 【Python进阶】第7篇:TCP和socket客户端程序开发。总结md文档集合(已分享,附代码)
    本文从14大模块展示了python高级用的应用。分别有Linux命令,多任务编程、网络编程、Http协议和静态Web编程、html+css、JavaScript、jQuery、MySql数据库的各种用法、python的闭包和装饰器、mini-web框架、正则表达式等相关文章的详细讲述。全套笔记和代码自取地址:请移步这里感......
  • 无涯教程-F# - 列表(Lists)
    在F#中,列表(Lists)是相同类型的元素的有序、不可变的组合,它在某种程度上等效于链表数据结构。F#模块Microsoft.FSharp.Collections.List具有列表上的常用操作,但是,F#会自动导入此模块,并使每个F#应用程序都可以访问它。List初始化以下是创建列表的各种方法-使用List字面量。......
  • 聪明办法学python第3次笔记
    条件ifelse语句if条件:执行行为else:执行行为elif语句:等同与c语言中的elsei语句ifx>10:print()elifx=10:print(2)else:print(3)ifelse推导式print(nif(n>0)else-n)match-case语句:等同于c语言中的switch-casem=map(int(),input())match......
  • CF992E Nastya and King-Shamans
    题意给定一个序列\(s\),记其前缀和序列为\(g_i\),\(q\)次修改。每次修改后输出任意满足\(s_i=g_{i-1}\)的解。Sol前缀和数组,每次答案使\(s_i\times2\)。也就是答案的个数不会超过\(log\)。再想,\(s_i-g_{i-1}\ge0\)的个数也不会超过\(log\)。于是我们考......
  • 20-基础SQL-多表查询
     多表关系项目开发过程中,在进行数据库表结构设计时,会根据业务需求及业务模块之间的关系,分析并设计表结构,由于业务之间相互关联,所以各个表结构之间也存在着各种联系,基本上分为以下三种:1.一对多(多对一)2.多对多案例1:创建学生表(student),课程表(course),学生课程关系表(student_......
  • 思考-如何阅读一本书
    通读境精读境贯通境精读境指深入细致地研读。叶圣陶《<精读指导举隅>前言》:“像这样把精读文章作为出发点,向四面八方发展开来,那么,精读了一篇文章,就可以带读许多书。”方法:要细读多思,反复琢磨,反复研究,边分析边评价,务求明白透彻,了解于心,以便吸取精华。对本专业的书籍及名......
  • springboot010大学生入学审核系统的设计与实现-计算机毕业设计源码+LW文档
    研究背景如今,互联网高速发展,网络遍布全球,通过互联网发布的消息能快而方便的传播到世界每个角落,并且互联网上能传播的信息也很广,比如文字、图片、声音、视频等[1]。互联网成了信息传播的主要途径,社会上各种各样的信息都想尽办法通过互联网进行传播,互联网对社会产生的影响越来越大[2......
  • 无涯教程-F# - 记录(Records)
    记录(Records)类似于元组,但是它包含命名字段。例如,typewebsite={title:string;url:string}定义记录使用type关键字将记录定义为类型,并将记录的字段定义为以分号分隔的列表。定义记录的语法是-typerecordName={[fieldName:dataType]+}创建......