Python Base——Part 3
今天继续和大家分享关于Python的一些基础知识
本次分享的内容主要包括:
Python中的for循环、函数range()、数值列表的操作、对数值列表进行简单的统计计算(找出极大值、极小值、求和)、列表解析、处理列表中的部分元素(切片)
#操作列表
#4.1 for循环
magnicians=["lisa","bill","jack","marria"] #第一步:先定义一个列表,命名为magnicians
for magnician in magnicians: #第二步:定义一个for循环,使得Python 从列表 magicians 中取出一个名字,并将其与变量 magician 相关联
print(magnician.title()) #第三步:让Python打印前面赋给变量 magician 的名字
for magnician in magnicians:
print(f"Wow, {magnician.title()}, it was a great trick!!!")
#对于第三章打印宾客名单,那么可以这样操作:
guests=["lisa","bill","jack","maria","helon"]
for guest in guests:
print(f"{guest.title()}, welcome to my party!!!")
print(f"\t{guest.title()}, I will miss you!!!\n") #两个函数调用print()都缩进了,因此它们都是for循环的一部分
print("Thank you, everyone. That was a great magic show!!!") #这里的函数调用print()没有缩进,因此它不属于for循环,只会执行一次,不会重复执行
#在for循环中,像包含多少行代码都可以
#在代码for guest in guests:后面,每个缩进的代码行都是循环的一部分,将针对列表中的每个值都执行一次。因此,可对列表中的每个值执行任意次数的操作
#不必要的缩进
message="Hello, paddi"
print(message)
#如上,print()原本不属于循环的一部分,但是却缩进了,Python就会报错
#因此为了避免不必要的缩进错误,请只缩进需要缩进的代码
remaining_balance=8054.52+31973.05
print(remaining_balance)
#另外,在for循环中,请谨记这个冒号. for后面的冒号告诉Python,下一行是循环的第一行
guests=["lisa","bill","jack","maria","helon"]
for guest in guests #另外,在for循环中,请谨记这个冒号(如果这里没有冒号,Python将会报错)
print(f"{guest.title()}, welcome to my party!!!")
#练习4.1
pizzas=["mc","kfc","hls","hbw"]
for pizza in pizzas:
print(pizza.title())
for pizza in pizzas:
print(f"I like {pizza.title()} best!!!")
print("I really like pizza and I want to eat it everyday!")
#练习4.2
animals=["elephant","panda","dog","cow"]
for animal in animals:
print(f"{animal.title()} is my favorite animal.")
print("Any of these animals make a great pet.")
#创建数值列表
#使用函数range()
for num in range(1,5):
print(num) #注意:这里看起来好像上述代码应该包括1-5,但实际上打印的时候只有1-4,并不会打印5
#在以上的示例中,range()只打印1-4,这是编程语言中常见的差一行为的结果
#在range()函数中,如果输出不符合预期,请尝试将指定的值增加1或减1
#使用range()函数创建列表
value=list(range(1,7))
print(value) #注意:这里依旧只包含1-6,并不包含7
#使用range()函数时,还可以指定步长
odd_nums=list(range(1,10,2))
print(odd_nums) #如上,函数range()从1开始,然后不断加2,直至达到或者超过中值(11)
#创建一个列表,包含1-10(整数)的平方
squares=[]
for num in range(1,11):
square=num**2
squares.append(square)
print(squares)
squares=[]
for num in range(1,11,2):
squares.append(num**2) #也可以不使用临时变量square,直接将每个计算到的值附加到列表末尾
print(squares)
#对数字列表执行简单的统计计算
values=[1,2,3,4,5,6,7,8,9,10,11,26]
print(min(values)) #找出极小值
print(max(values)) #找出极大值
print(sum(values)) #求和
#列表解析
squares=[val**2 for val in range(1,11)] #注意:这里for后面没有冒号
print(squares)
#练习题4.3
#从1-20(含)
counts=list(range(1,21))
for count in counts:
print(count)
for c in range(1,21):
print(c)
#一百万及一百万求和
billions=list(range(1,1000001))
for billion in billions:
print(billion)
print(sum(billions))
print(min(billions))
print(max(billions))
odds=list(range(1,20,2))
for odd in odds:
print(odd)
three=list(range(3,30,3))
for thr in three:
print(thr)
#立方解析
cubics=[values**3 for values in range(1,10)]
print(cubics)
#立方
cubics=[]
for cubic in range(1,10):
cubic=cubic**3
cubics.append(cubic)
print(cubics)
cubics=[]
for cubic in range(1,10):
cubics.append(cubic**3)
print(cubics)
#处理列表中的部分元素(Python称之为切片)
players=["a","b","c","d","e","f","g","h","i","j"]
print(players[0:2]) #同样的,结果只会输出索引为0和1的两个值,到索引2就停止了,不再输出
#输出特定索引之后的所有值
print(players[5:])
print(players[-2:])
#输出特定索引之前的所有值
print(players[:4])
print(players[:-5])
#可在表示切片的括号内指定第三个值,这个值告诉Python在指定范围内每隔多少个元素提取一个
print(players[0:6:2]) #这里即表示每隔两个元素提取一个值
今天的分享就这么多了。欢迎大家莅临我的另一个草稿箱(公众号:统计小菜椒)
(ps:过程很苦,坚持很酷)