1.1 列表的定义
List(列表) 是Python中使用最频繁的数据类型,在其他语言中通常叫做数组
专门用于存储一串 信息
列表用[]定义,数据之间使用,分隔
列表的索引从0开始
索引就是数据在列表中的位置编号,索引又可以被称为下标
注意:从列表中取值时,如果超出索引范围,程序会报错
name_list= ["zhangsan","lisi","wangwu"]
1.2 列表常用操作
在ipython3中定义一个列表,例如:name_list = []
输入name_list.按下TAB键,ipython会提示列表能够使用的方法如下:
1. In [1]: name_list.
2. name_list.appendname_list.countname_list.insertname_list.reverse
3. name_list.clearname_list.extendname_list.popname_list.sort
4. name_list.copyname_list.indexname_list.remove
序号分类关键字 / 函数 / 方法说明
1增加列表.insert(索引, 数据)在指定位置插入数据
列表.append(数据)在末尾追加数据
列表.extend(列表2)将列表2 的数据追加到列表
2修改列表[索引] = 数据修改指定索引的数据
3删除del 列表[索引]删除指定索引的数据
列表.remove[list数据]删除第一个出现的指定数据
列表.pop删除末尾数据
列表.pop(索引)删除指定索引数据
列表.clear清空列表
4统计len(列表)列表长度
列表.count(数据)数据在列表中出现的次数
5排序列表.sort()升序排序
列表.sort(reverse=True)降序排序
列表.reverse()逆序、反转
del 关键字(了解即可)
使用del关键字(delete) 同样可以删除列表中元素
del关键字本质上是用来将一个变量从内存中删除的
如果使用del关键字将变量从内存中删除,后续的代码就不能再使用这个变量了
1.delname_list[1]
在日常开发中,要从列表删除数据,建议使用列表提供的方法
关键字、函数和方法(了解即可)
关键字是 Python 内置的、具有特殊意义的标识符
1.In[1]:importkeyword
2.In[2]:print(keyword.kwlist)
3.In[3]:print(len(keyword.kwlist))
关键字后面不需要使用括号
函数封装了独立功能,可以直接调用
1.函数名(参数)
函数需要死记硬背
方法和函数类似,同样是封装了独立的功能
方法需要通过对象来调用,表示针对这个对象要做的操作
1.对象.方法名(参数)
在变量后面输入.,然后选择针对这个变量要执行的操作,记忆起来比函数要简单很多
1.3 循环遍历
遍历就是从头到尾依次从列表中获取数据
在循环体内部针对每一个元素,执行相同的操作
在Python中为了提高列表的遍历效率,专门提供的迭代 iteration 遍历
使用for就能够实现迭代遍历
1. #for循环内部使用的变量in列表
2. fornameinname_list:
3.
4.循环内部针对列表元素进行操作
5.print(name)
6.
1.4应用场景
尽管Python的列表中可以存储不同类型的数据
但是在开发中,更多的应用场景是
列表存储相同类型的数据
通过迭代遍历,在循环体内部,针对列表中的每一项元素,执行相同的操作
02. 元组
2.1 元组的定义
Tuple(元组)与列表类似,不同之处在于元组的元素不能修改
元组表示多个元素组成的序列
元组在Python开发中,有特定的应用场景
用于存储一串 信息,数据之间使用,分隔
元组用()定义
元组的索引从0开始
索引就是数据在元组中的位置编号
1. info_tuple = ("zhangsan",18,1.75)
创建空元组
1. info_tuple = ()
元组中只包含一个元素时,需要在元素后面添加逗号
1. info_tuple = (50, )
2.2 元组常用操作
在ipython3中定义一个元组,例如:info = ()
输入info.按下TAB键,ipython会提示元组能够使用的函数如下:
1. info.count info.index
有关元组的常用操作可以参照上图练习
2.3 循环遍历
取值就是从元组中获取存储在指定位置的数据
遍历就是从头到尾依次从元组中获取数据
1. # for 循环内部使用的变量 in 元组
2. foritemininfo:
3.
4. 循环内部针对元组元素进行操作
5. print(item)
6.
在Python中,可以使用for循环遍历所有非数字型类型的变量:列表、元组、字典以及字符串
提示:在实际开发中,除非能够确认元组中的数据类型,否则针对元组的循环遍历需求并不是很多
2.4 应用场景
尽管可以使用for in遍历元组
但是在开发中,更多的应用场景是:
函数的 参数 和 返回值,一个函数可以接收任意多个参数,或者一次返回多个数据
有关函数的参数 和 返回值,在后续函数高级给大家介绍
格式字符串,格式化字符串后面的()本质上就是一个元组
让列表不可以被修改,以保护数据安全
1. info = ("zhangsan",18)
2.
3. print("%s 的年龄是 %d"% info)
4.
元组和列表之间的转换
使用list函数可以把元组转换成列表
1. list(元组)
使用tuple函数可以把列表转换成元组
1. tuple(列表)
03. 字典
3.1 字典的定义
dictionary(字典) 是除列表以外Python之中最灵活的数据类型
字典同样可以用来存储多个数据
通常用于存储描述一个物体的相关信息
和列表的区别
列表是有序的对象集合
字典是无序的对象集合
字典用{}定义
字典使用键值对存储数据,键值对之间使用,分隔
键key是索引
值value是数据
键和值之间使用:分隔
键必须是唯一的
值可以取任何数据类型,但键只能使用字符串、数字或元组
1. xiaoming = {"name":"小明",
2 ." age":18,
3." gender":True,
4." height":1.75}
3.2 字典常用操作
在ipython3中定义一个字典,例如:xiaoming = {}
输入xiaoming.按下TAB键,ipython会提示字典能够使用的函数如下:
In [1]: xiaoming.
xiaoming.clearxiaoming.itemsxiaoming.setdefault
xiaoming.copyxiaoming.keysxiaoming.update
xiaoming.fromkeysxiaoming.popxiaoming.values
xiaoming.getxiaoming.popitem
有关字典的常用操作可以参照上图练习
3.3 循环遍历
遍历就是依次从字典中获取所有键值对
# for 循环内部使用的 `key 的变量` in 字典
forkinxiaoming:
print("%s: %s"% (k, xiaoming[k]))
提示:在实际开发中,由于字典中每一个键值对保存数据的类型是不同的,所以针对字典的循环遍历需求并不是很多
3.4应用场景
尽管可以使用for in遍历字典
但是在开发中,更多的应用场景是:
使用多个键值对,存储描述一个物体的相关信息—— 描述更复杂的数据信息
将多个字典放在一个列表中,再进行遍历,在循环体内部针对每一个字典进行相同的处理
card_list = [{"name":"张三",
"qq":"12345",
"phone":"110"},
{"name":"李四",
"qq":"54321",
"phone":"10086"}
]
04. 字符串
4.1 字符串的定义
字符串就是一串字符,是编程语言中表示文本的数据类型
在 Python 中可以使用一对双引号"或者一对单引号'定义一个字符串
虽然可以使用\"或者\'做字符串的转义,但是在实际开发中:
如果字符串内部需要使用",可以使用'定义字符串
如果字符串内部需要使用',可以使用"定义字符串
可以使用索引获取一个字符串中指定位置的字符,索引计数从0开始
也可以使用for循环遍历字符串中每一个字符
大多数编程语言都是用"来定义字符串
string ="Hello Python"
forcinstring:
print(c)
4.2 字符串的常用操作
在ipython3中定义一个字符串,例如:hello_str = ""
输入hello_str.按下TAB键,ipython会提示字符串能够使用的方法如下:
In [1]: hello_str.
hello_str.capitalizehello_str.isidentifierhello_str.rindex
hello_str.casefoldhello_str.islowerhello_str.rjust
hello_str.centerhello_str.isnumerichello_str.rpartition
hello_str.counthello_str.isprintablehello_str.rsplit
hello_str.encodehello_str.isspacehello_str.rstrip
hello_str.endswithhello_str.istitlehello_str.split
hello_str.expandtabshello_str.isupperhello_str.splitlines
hello_str.findhello_str.joinhello_str.startswith
hello_str.formathello_str.ljusthello_str.strip
hello_str.format_maphello_str.lowerhello_str.swapcase
hello_str.indexhello_str.lstriphello_str.title
hello_str.isalnumhello_str.maketranshello_str.translate
hello_str.isalphahello_str.partitionhello_str.upper
hello_str.isdecimalhello_str.replacehello_str.zfill
hello_str.isdigithello_str.rfind
提示:正是因为 python 内置提供的方法足够多,才使得在开发时,能够针对字符串进行更加灵活的操作!应对更多的开发需求!
1) 判断类型 - 9
方法说明
string.isspace()如果 string 中只包含空格,则返回 True
string.isalnum()如果 string 至少有一个字符并且所有字符都是字母或数字则返回 True
string.isalpha()如果 string 至少有一个字符并且所有字符都是字母则返回 True
string.isdecimal()如果 string 只包含数字则返回 True,全角数字
string.isdigit()如果 string 只包含数字则返回 True,全角数字、⑴、\u00b2
string.isnumeric()如果 string 只包含数字则返回 True,全角数字,汉字数字
string.istitle()如果 string 是标题化的(每个单词的首字母大写)则返回 True
string.islower()如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是小写,则返回 True
string.isupper()如果 string 中包含至少一个区分大小写的字符,并且所有这些(区分大小写的)字符都是大写,则返回 True
2) 查找和替换 - 7
方法说明
string.startswith(str)检查字符串是否是以 str 开头,是则返回 True
string.endswith(str)检查字符串是否是以 str 结束,是则返回 True
string.find(str, start=0, end=len(string))检测 str 是否包含在 string 中,如果 start 和 end 指定范围,则检查是否包含在指定范围内,如果是返回开始的索引值,否则返回-1
string.rfind(str, start=0, end=len(string))类似于 find(),不过是从右边开始查找
string.index(str, start=0, end=len(string))跟 find() 方法类似,不过如果 str 不在 string 会报错
string.rindex(str, start=0, end=len(string))类似于 index(),不过是从右边开始
string.replace(old_str, new_str, num=string.count(old))把 string 中的 old_str 替换成 new_str,如果 num 指定,则替换不超过 num 次
3) 大小写转换 - 5
方法说明
string.capitalize()把字符串的第一个字符大写
string.title()把字符串的每个单词首字母大写
tring.lower()转换 string 中所有大写字符为小写
string.upper()转换 string 中的小写字母为大写
string.swapcase()翻转 string 中的大小写
4) 文本对齐 - 3
方法说明
string.ljust(width)返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串
string.rjust(width)返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串
string.center(width)返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
5) 去除空白字符 - 3
方法说明
string.lstrip()截掉 string 左边(开始)的空白字符
string.rstrip()截掉 string 右边(末尾)的空白字符
string.strip()截掉 string 左右两边的空白字符
6) 拆分和连接 - 5
方法说明
string.partition(str)把字符串 string 分成一个 3 元素的元组 (str前面, str, str后面)
string.rpartition(str)类似于 partition() 方法,不过是从右边开始查找
string.split(str=”“, num)以 str 为分隔符拆分 string,如果 num 有指定值,则仅分隔 num + 1 个子字符串,str 默认包含 ‘\r’, ‘\t’, ‘\n’ 和空格
string.splitlines()按照行(‘\r’, ‘\n’, ‘\r\n’)分隔,返回一个包含各行作为元素的列表
string.join(seq)以 string 作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串
4.3 字符串的切片
切片方法适用于字符串、列表、元组
切片使用索引值来限定范围,从一个大的字符串中切出小的字符串
列表和元组都是有序的集合,都能够通过索引值获取到对应的数据
字典是一个无序的集合,是使用键值对保存数据
字符串[开始索引:结束索引:步长]
注意:
指定的区间属于左闭右开型[开始索引, 结束索引)=>开始索引 >= 范围 < 结束索引
从起始位开始,到结束位的前一位结束(不包含结束位本身)
从头开始,开始索引数字可以省略,冒号不能省略
到末尾结束,结束索引数字可以省略,冒号不能省略
步长默认为1,如果连续切片,数字和冒号都可以省略
索引的顺序和倒序
在 Python 中不仅支持顺序索引,同时还支持倒序索引
所谓倒序索引就是从右向左计算索引
最右边的索引值是-1,依次递减
需求
截取从 2 ~ 5 位置 的字符串
截取从 2 ~末尾的字符串
截取从开始~ 5 位置 的字符串
截取完整的字符串
从开始位置,每隔一个字符截取字符串
从索引 1 开始,每隔一个取一个
截取从 2 ~末尾 - 1的字符串
截取字符串末尾两个字符
字符串的逆序(面试题)
答案
num_str ="0123456789"
# 1. 截取从 2 ~ 5 位置 的字符串
print(num_str[2:6])
# 2. 截取从 2 ~ `末尾` 的字符串
print(num_str[2:])
# 3. 截取从 `开始` ~ 5 位置 的字符串
print(num_str[:6])
# 4. 截取完整的字符串
print(num_str[:])
# 5. 从开始位置,每隔一个字符截取字符串
print(num_str[::2])
# 6. 从索引 1 开始,每隔一个取一个
print(num_str[1::2])
# 倒序切片
# -1 表示倒数第一个字符
print(num_str[-1])
# 7. 截取从 2 ~ `末尾 - 1` 的字符串
print(num_str[2:-1])
# 8. 截取字符串末尾两个字符
print(num_str[-2:])
# 9. 字符串的逆序(面试题)
print(num_str[::-1])
05. 公共方法
5.1 Python 内置函数
Python 包含了以下内置函数:
函数描述备注
len(item)计算容器中元素个数
del(item)删除变量del 有两种方式
max(item)返回容器中元素最大值如果是字典,只针对 key 比较
min(item)返回容器中元素最小值如果是字典,只针对 key 比较
例如:
len
1.>>> len("hello itcast")
2.12
3.>>> len([1,2,3,4])
4.4
5.>>> len((3,4))
6.2
7.>>> len({"a":1,"b":2})
8.2
9.注意:len在操作字典数据时,返回的是键值对个数。
max
>>> max("hello itcast")
't'
>>> max([1,4,522,3,4])
522
>>> max({"a":1,"b":2})
'b'
>>> max({"a":10,"b":2})
'b'
>>> max({"c":10,"b":2})
'c'
del
del有两种用法,一种是del加空格,另一种是del()
>>> a =1
>>> a
1
>>> del a
>>> a
Traceback (most recent call last):
File"", line1,in
NameError:name'a'isnotdefined
>>> a = ['a','b']
>>> del a[0]
>>> a
['b']
>>> del(a)
>>> a
Traceback (most recent call last):
File"", line1,in
NameError:name'a'isnotdefined
多维列表/元祖访问的示例
>>> tuple1 = [(2,3),(4,5)]
>>> tuple1[0]
(2, 3)
>>> tuple1[0][0]
2
>>> tuple1[0][2]
Traceback (most recent call last):
File "", line 1, in
IndexError: tuple index out of range
>>> tuple1[0][1]
3
>>> tuple1[2][2]
Traceback (most recent call last):
File "", line 1, in
IndexError: list index out of range
>>> tuple2 = tuple1+[(3)]
>>> tuple2
[(2, 3), (4, 5), 3]
>>> tuple2[2]
3
>>> tuple2[2][0]
Traceback (most recent call last):
File "", line 1, in
TypeError: 'int' object is not subscriptable
注意
字符串比较符合以下规则: “0” < “A” < “a”
5.2 切片
描述Python 表达式结果支持的数据类型
切片“0123456789”[::-2]“97531”字符串、列表、元组
切片使用索引值来限定范围,从一个大的字符串中切出小的字符串
列表和元组都是有序的集合,都能够通过索引值获取到对应的数据
字典是一个无序的集合,是使用键值对保存数据
5.3 运算符
运算符Python 表达式结果描述支持的数据类型
+[1, 2] + [3, 4][1, 2, 3, 4]合并字符串、列表、元组
*[“Hi!”] * 4[‘Hi!’, ‘Hi!’, ‘Hi!’, ‘Hi!’]重复字符串、列表、元组
in3 in (1, 2, 3)True元素是否存在字符串、列表、元组、字典
not in4 not in (1, 2, 3)True元素是否不存在字符串、列表、元组、字典
= == < <=(1, 2, 3) < (2, 2, 3)True元素比较字符串、列表、元组
例如:
+
>>>"hello "+"itcast"
'hello itcast'
>>> [1,2] + [3,4]
[1,2,3,4]
>>> ('a','b') + ('c','d')
('a','b','c','d')
*
>>>'ab'*4
'abababab'
>>> [1,2]*4
[1,2,1,2,1,2,1,2]
>>> ('a','b')*4
('a','b','a','b','a','b','a','b')
in
>>>'itc'in'hello itcast'
True
>>>3in[1,2]
False
>>>4in(1,2,3,4)
True
>>>"name"in{"name":"Delron","age":24}
True
注意
in在对字典操作时,判断的是字典的键
in和not in被称为成员运算符
成员运算符
成员运算符用于测试序列中是否包含指定的成员
运算符描述实例
in如果在指定的序列中找到值返回 True,否则返回 False3 in (1, 2, 3)返回True
not in如果在指定的序列中没有找到值返回 True,否则返回 False3 not in (1, 2, 3)返回False
注意:在对字典操作时,判断的是字典的键
5.4 完整的 for 循环语法
在Python中完整的for 循环的语法如下:
for变量in集合:
循环体代码
else:
没有通过break退出循环,循环结束后,会执行的代码
应用场景
在迭代遍历嵌套的数据类型时,例如一个列表包含了多个字典
需求:要判断 某一个字典中 是否存在 指定的 值
如果存在,提示并且退出循环
如果不存在,在循环整体结束后,希望得到一个统一的提示
students = [
{"name":"阿土",
"age":20,
"gender":True,
"height":1.7,
"weight":75.0},
{"name":"小美",
"age":19,
"gender":False,
"height":1.6,
"weight":45.0},
]
find_name ="阿土"
forstu_dictinstudents:
print(stu_dict)
# 判断当前遍历的字典中姓名是否为find_name
ifstudents["name"] == find_name:
print("找到了")
# 如果已经找到,直接退出循环,就不需要再对后续的数据进行比较
break
else:
print("没有找到")
print("循环结束")
作业:
一、创建一个字符串,内容为’人生苦短,我用python,life is short’
1、统计字符串里面p的个数,l的个数,
2、反向查找s所在的位置,
3、将所有的小写单词换成大写
4、将所有的大写单词换成小写
5、将所有单词首字母大写
6、切片:把所有英文单词切片出来,赋值给新的字符串
二、请尝试编写一些简短的程序来完成下面的练习,以获得一些使用Python 列表的第一手经验。
1姓名: 将一些朋友的姓名存储在一个列表中,并将其命名为names 依次访问该列表中的每个元素,从而将每个朋友的姓名都打印出来
2 问候语:继续使用练习1中的列表,但不打印每个朋友的姓名,而为每人打印一条消息。每条消息都包含相同的问候语,但抬头为相应朋友的姓名。
3自己的列表:想想你喜欢的通勤方式,如骑摩托车或开汽车,并创建一个包合多种通勤方式的列表根据该列表打印一系列有关这些通勤方式的宣言,如”I would like to own a Honda motorcycle如:我喜欢‘雅马哈牌’电动车
4嘉宾名单: 如果你可以邀请任何人-起共进晚餐无论是在世的还是故去的),你会邀请哪些人? 请创建一个列表,其中包含至少3个你想邀请的人;然后,使用这个列表打印消息,邀请这些人来与你共进晚餐
5修改嘉宾名单:你刚得知有嘉其无法赴约,因此需要另外邀请一位嘉宾。
以完成练习4时编写的程序为基础,在程序末尾添加一条print 语句,指出哪位嘉宾无法赴约
修改嘉实名单,将无法赴约的嘉宾的姓名替换为新邀请的嘉宾的姓名。
再次打印一系列消息,向名单中的每位嘉宾发出邀请。
6添加嘉宾: 你刚找到了一个更大的餐桌,可容纳更多的嘉宾。请想想你还想邀请哪三位 嘉 宾。
以完成练习编写的程序为基础,在程序末尾添加一条print 语句,指出你找到了一个更大的餐桌。
使用insert()将一位新嘉实添加到名单开头。
使用insert()将另一位新嘉宾添加到名单中间。
使用append()将最后一位新嘉宾添加到名单末尾
打印一系列消息,向名单中的每位嘉宾发出邀请
7缩减名单: 你刚得知新购买的餐桌无法及时送达,因此只能邀请两位嘉宾。
以完成练习6时编写的程序为基础,在程序末尾添加一行代码,打印一条你只能邀请两位嘉宾共进晚餐的消息
使用pop()不断地删除名单中的嘉宾,直到只有两位嘉宾为止。次从名单中弹出一位嘉宾时,都打印一条消息,让该嘉宾知悉你很抱歉,无法邀请他来共进晚餐。
对于余下的两位嘉宾中的每一位,都打印一条消息,指出他依然在受邀人之列。
使用del将最后两位嘉宾从名单中删除,让名单变成空的。打印该名单,核实程序结束时名单确实是空的。
8放眼世界: 想出至少5个你渴望去旅游的地方。
将这些地方存储在一个列表中,并确保其中的元素不是按字母顺序排列的。
按原始排列顺序打印该列表。不要考虑输出是否整洁的问题,只管打印原始Python 列表。
使用reverse()修改列表元素的排列顺序。打印该列表,核实排列顺序确实变了
使用reverse()再次修改列表元素的排列顺序。打印该列表,核实已恢复到原来的排列顺序。
使用sort()修改该列表,使其元素按字母顺序排列。打印该列表,核实排列顺序确实变了。
使用sort()修改该列表,使其元素按与字母顺序相反的顺序排列。打印该列表。核实排列顺序确实变了。
9 晚餐嘉宾: 在完成练习47 时编写的程序之一中,使用len()打印一条消息,指出你邀请了多少位嘉宾来与你共进晚餐。
10 尝试使用各个函数: 想想可存储到列表中的东西,如山岳、河流、国家、城市、语言或你喜欢的任何东西。编写一个程序,在其中创建一个包含这些元素的列表,然后,对于学习过的每个函数,都至少使用一次来处理这个列表。
三、
比萨: 想出至少三种你喜欢的比萨,将其名称存储在一个列表中,再使用for循环将每种比萨的名称都打印出来。
修改这个for循环,使其打印包含比萨名称的句子,而不仅仅是比萨的名称。对于每种比萨,都显示一行输出,如“I like pperoni pizza
在程序末尾添加一行代码,它不在for循环中,指出你有多喜欢比萨输出应包含针对每种比萨的消息,还有一个总结性句子如“Tealy love piza!”。
动物:想出至少三种有共同特征的动物,将这些动物的名称存储在一个列表中,再使用for 循环将每种动物的名称都打印出来。
修改这个程序,使其针对每种动物都打印一个句子,如“Adgwoudmakeagpet”
在程序末尾添加一行代码,指出这些动物的共同之处,如打印诸如
“Any oftheseanimals would make a great pet!””这 样 的句子。
四、
打印消息”Thfistree itemsin the list are.” 再使用切片来打印列表的前三个元素。
打印消息“Three items from the middle ofthe list are”,再使用切片来打印列表中间的三个元素。
打印消息“The last three items in the list are:”,再使用切片来打印列表末尾的三个元素
你的比萨和我的比萨: 在你为完成上面练习而编写的程序中,创建比萨列表的副本,并将其存储到变量friend_pizzas 中,再完成如下任务
在原来的比萨列表中添加一种比萨。
在列表friend pizzas中添加另一种比萨
核实你有两个不同的列表。为此,打印消息“my favorite pizzas are:”,再使用一个for 循环来打印第一个列表; 打印消息“Myfriend’sfavorite
pizzas are:”,再 使用一个for循环来打印第二个列表。核实新增的比萨被添加到了正确的列表中。
使用多个循环,在本节中,为节省篇幅,程序padspy的每个版的到表中用for 循环来打印列表。请选择一个版本的foods,py,在其中编写两个for 循环,将各个食品列表都打印出来
五、
1、 使用一个字典来存储一个熟人的信息,包括名、姓、年龄和居住的城市。
将存储在该字典中的每项信息都打印出来
2 使用一个字典来存储一些人喜欢的数字请想出5个人的名字,并将这些名字用作字典中的键; 想出每个人喜欢的一个数字,并将这些数字作为值存储在字典中打印每个人的名字和喜欢的数字。为让这个程序更有趣,通过询问朋友确保数据是真实的
3 词汇表: Python字典可用于模拟现实生活中的字典,但为避免混淆,我们将后者称为词汇表。
想出你在前面学过的5 个编程词汇,将它们用作词汇表中的键,并将它们的含义作为值存储在词汇表中。
以整洁的方式打印每个词汇及其含义。为此,你可以先打印词汇,在它后面加上一个冒号,再打印词汇的含义; 也可在一行打印词汇,再使用换行符(\n )插入一个空行,然后在下一行以缩进的方式打印词汇的含义。
4 词汇表2: 既然你知道了如何遍历字典,现在请整理你为完成练习6-3 而编写的代码,将其中的一系列print语句替换为一个遍历字典中的键和值的循环。确定该循环正确无误后,再在词汇表中添加5 个Python 术语。当你再次运行这个程序时,这些新术语及其含义将自动包含在输出中。
5 河流: 创建一个字典,在其中存储三条大河流及其流经的国家。其中一个键一
值对可能是’nile’:’egypt
使用循环为每条河流打印一条消息,如“The Nile run sthrough Egypt”
使用循环将该字典中每条河流的名字都打印出来。
使用循环将该字典包含的每个国家的名字都打印出来。
六、
7 人:在为完成陈习五-1而编写的程序中,再创建两个表示人的字典,然后将这三个字典都存储在一个名为people 的列表中。遍历这个列表,将其中每个人的所有信息都打印出来,
8 宠物:创建多个宇典,对于每个字典,都使用一个宠物的名称来给它命名; 在每个字典中,包含宠物的类型及其主人的名字。将这些字典存储在一个名为pets 的列表中,再遍历该列表,并将宠物的所有信息都打印出来
9 喜欢的地方: 创建一个名为favorite_places 的字典。在这个字典中,将三个人的名字用作键; 对于其中的每个人,都存储他喜欢的1~3个地方。为让这个练习更有
趣些,可让一些朋友指出他们喜欢的几个地方。遍历这个字典,并将其中每个人的名字及其喜欢的地方打印出来
10 喜欢的数字:修改为完成练习五-2而编写的程序,让每个人都可以有多个喜欢的数字,然后将每个人的名字及其喜欢的数字打印出来。
11 城市: 创建一个名为cities 的字典,其中将三个城市名用作键; 对于每座城市,都创建一个字典,并在其中包含该城市所属的国家、人口约数以及一个有关该城市的事实。在表示每座城市的字典中,应包含country、population和fact 等键。将每座城市的名字以及有关它们的信息都打印出来。
12、list= [["传奇","贪玩蓝月"],["QQ飞车","QQ炫舞"],["天天酷跑","天天炫斗"],["王者荣耀","绝地求生"]]
print("这个是游戏叫%s"%?)
13、新建一个空列表 list = []
新建一个空字典 dict ={}
最终执行3次
请输入姓名
请输入年龄
请输入性别
请输入QQ号
请输入体重
如果输入的名字重复了,提示名字重复,请重新输
最终列表一共三个值list=[{},{},{}]
输入次数完成后,把输入的东西遍历出来
然后把他们的平均年龄算出来
网友评论