(一)列表、字典、元祖

第四关笔记
对字典的理解:字典的key必须准确不可变,以便hash存储
关于字典的遍历:
字典的三种打印方式

例题:下面,会将电影的影片名和主演放在字典里,如movie = {'妖猫传':['黄轩','染谷将太']}。
需要你补充一些代码,让其他人只要输入演员名,就打印出:××出演了电影××。

movies = {
'妖猫传':['黄轩','染谷将太'],
'无问西东':['章子怡','王力宏','祖峰'],
'超时空同居':['雷佳音','佟丽娅'],
}

actor = input('你想查询哪个演员?')
for  movie in movies:  # 用 for 遍历字典
    actors = movies[movie]  # 读取各个字典的主演表
    if actor in actors:
        print(actor + '出演了电影' + movie)

(二)合并两个列表以及排序

1.append() 向列表尾部追加一个新元素,列表只占一个索引位,在原有列表上增加
2.extend() 向列表尾部追加一个列表,将列表中的每个元素都追加进来,在原有列表上增加
3.+ 直接用+号看上去与用extend()一样的效果,但是实际上是生成了一个新的列表存这两个列表的和,只能用在两个列表相加上
4.copy() 定义一个新列表,将两个列表的内容copy过来。
运行情况

●排序:sort()和sorted()
sort() 函数会直接修改原有列表,函数返回为 None。sorted() 函数会返回一个排序后的列表,原有列表保持不变。如果实际应用过程中需要保留原有列表,使用 sorted() 函数较为适合,否则可以选 择 sort() 函数,因为 sort() 函数不需要复制原有列表,消耗的内存较少,效率也较高。
使用方式:
a为一个任意的列表。
sorted(a)
a.sort()

例题:一次测评中,老师将 学习小组A 和 学习小组B 的测评成绩(满分 100 分)从低到高记录放进两个列表:
A = [91, 95, 97, 99],B = [92, 93, 96, 98] 。
现在,老师想将两个小组的成绩合并为一个列表,并按照从低到高的顺序排序。

list1 = [91, 95, 97, 99]  
list2 = [92, 93, 96, 98]

# 把 A 组成绩赋值给一个新列表,用来存合并的成绩——这个细节要注意!
list3 = list1.copy()
list3.extend(list2)
print(list3)

list3.sort()
print(list3)

感想就是太爽了!我再也不用写冒泡排序了呜呜呜呜呜呜

(三)else语句

for循环举例

while循环举例

(四)range语句

用法举例

(五)append语句和pop语句

append:
append()方法用于在列表末尾添加新的对象,需要注意的是每次只能添加一个元素,且该方法无返回值,但是会修改原来的列表。
使用格式为:列表.append(内容)
pop:
pop()方法:用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。
使用格式为:变量=列表.pop()

例题:小明小红小刚轮流坐前排
四种方法
切片和pop函数

(六)计时器

import time   #调用time模块
time.sleep(secs)   
#使用time模块下面的sleep()函数,括号里填的是间隔的秒数(seconds,简称secs)
#time.sleep(1.5)就表示停留1.5秒再运行后续代码

(七)随机生成

import random 
#调用random模块,与
a = random.randint(1,100)
# 随机生成1-100范围内(含1和100)的一个整数,并赋值给变量a
print(a)

(八)format()函数

# % 格式化:str % ()
print('%s%d'%('数字:',0))
print('%d,%d'%(0,1))
print('%d,%d,%d'%(0,1,0))

name1 = 'Python'
print('I am learning %s'% name1)  # 注:当只跟一个数据时,%后可不加括号,format()一定要有。

# format()格式化函数:str.format()
print('\n{}{}'.format('数字:',0))  # 优势1:不用担心用错类型码。
print('{},{}'.format(0,1))  # 不设置指定位置时,默认按顺序对应。
print('{1},{0}'.format(0,1))  # 优势2:当设置指定位置时,按指定的对应。
print('{0},{1},{0}'.format(0,1))  # 优势3:可多次调用format后的数据。

name2 =  'Python基础语法'
print('我正在学{}'.format(name2))  # format()函数也接受通过参数传入数据。

(九)print打印时换行与不换行

1.end参数可用来控制换行行数和结尾字符。

print('hello',end='')
print('world')

print('hello',end='  ')
print('world')

print('hello',end='!')
print('world')

对应的结果:运行情况对照

2.可以用print('')来控制换行。

for i in range(1,3):
    print('%d X %d = %d' % (i,2,i*2),end = '  ')
print('') #用来换行

for i in range(1,4):
    print('%d X %d = %d' % (i,3,i*3),end = '  ')  
print('') #用来换行

运行情况

Last modification:March 10th, 2021 at 01:56 am
要给我买糖吃嘛OuO