循环嵌套
## 循环嵌套
## 打印 5 x 6的 * 矩阵
i = 0
while i < 5:
print(f"i={i} =================== ")
j = 0
while j < 6:
print(f"j={j} ")
j+=1
i+=1
打印
## 循环嵌套
## 打印 5 x 6的 * 矩阵
# 外层循环负责打印多少行, 里层循环负责具体这行干啥
i = 0
while i < 5:
j = 0
while j < 6:
print("* ", end='') # 不换行
j+=1
# 换行
print()
i+=1
# * * * * * *
# * * * * * *
# * * * * * *
# * * * * * *
# * * * * * *
# 外层循环负责打印多少行, 里层循环负责具体这行干啥
# *
# * *
# * * *
# * * * *
# * * * * *
i = 0
while i < 5:
j = 0
while j < i+1:
print("* ", end='') # 不换行
j+=1
# 换行
print()
i+=1
# 九九乘法表
# for i in range(9):
# for j in range(i+1):
# print(f"{j+1} x {i+1} = {(i+1)*(j+1)} ", end='')
# print()
for i in range(1, 10):
for j in range(1, i+1):
# print(f"{j} x {i} = {i*j} \t", end='')
print("{} x {} = {} \t".format(j, i, i*j), end='')
print()
列表
# list 列表 可以存储不同类型元素的容器
heros = ["小鲁班", "狄仁杰", "后羿", "安琪拉", 111, 12.22, [223, 44]]
print(heros)
print(type(heros)) # <class 'list'>
# 基本操作
# 查询/访问
# 索引下标访问
print(heros[0])
# print(heros[7]) 索引必须合法
# 修改
heros[4] = "澜"
print(heros)
# 增加
# 末尾追加
heros.append("云樱")
heros.append(["曹操", "刘备"])
#
heros.extend(["曹操", "刘备"])
heros.extend("哈哈哈")
heros.extend("abc")
print(heros)
#
heros.insert(1, "哈哈哈")
print(heros)
# 删除
# del heros
# print(heros) NameError: name 'heros' is not defined
del heros[6]
del heros[6]
print(heros)
heros.remove("哈哈哈")
print(heros)
print(heros.pop())
print(heros)
print(heros.pop(2))
print(heros)
from random import randint
# 列表的操作
li = []
for i in range(10):
li.append(i)
print(li)
# randint(a, b) 可以生[a, b]区间的任意随机整数
scores = []
for i in range(10):
score = randint(0, 100)
scores.append(score)
print(scores)
# 列表的迭代/遍历
# 将列表(迭代对象的一种) 元素一个一个取出的操作就是迭代
# for 临时变量 in 可迭代对象:
# 循环体
jiege_scores = []
for score in scores:
if score >= 60:
jiege_scores.append(score)
print(jiege_scores)
列表推导式
from random import randint
# 列表推导式
# 简化for循环的操作
# [表达式 for 临时 in 迭代对象 if 条件]
print([i for i in range(10)])
print([i+100 for i in range(10)])
print([i**2 for i in range(10)])
print([randint(10, 100) for i in range(10)])