5 Python循环嵌套案例

5 Python循环嵌套案例,第1张

文章目录
    • 矩阵转置
    • 排序
    • 列表推导式嵌套

矩阵转置
"""
    矩阵转置
        将list01中的每列,存储到list02中的每行.
"""

list01 = [
    [1, 2, 3, 4],
    [5, 6, 7, 8],
    [9, 10, 11, 12],
    [13, 14, 15, 16],
]

list02 = []
for c in range(4):
    line = []
    for r in range(4):
        line.append(list01[r][c])
    list02.append(line)

print(list02)

排序
"""
    [5,56,65,7,87,3,9]
    升序(小 -->  大)
    思想:
        取出前几个(不要最后一个)
        依次与后面进行比较
        如果发现更小的则交换
"""
list01 = [5, 56, 65, 7, 87, 3, 9]

# 让列表中所有元素,俩俩比较。
# 取数据   取到倒数第二个,倒数第一个后面没有数据了
for r in range(len(list01)-1):#0 1 2 3...len-2
    # 做比较
    for c in range(r+1, len(list01)):
        if list01[r] > list01[c]:
            list01[r],list01[c] = list01[c],list01[r]
print(list01)
列表推导式嵌套
# 1. 打印扑克牌
# 花色:["红桃","黑桃","方片","梅花"]
# 数字:["A","2","3","4","5","6","7","8","9","10","J","Q","k"]
list_suit = ["红桃", "黑桃", "方片", "梅花"]
list_number = ["A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "k"]
list_poket = [suit + number for suit in list_suit for number in list_number]
print(list_poket)

# 2. 一個色子有1--6個數字range(1,7)
# 請打印出3个色子所有的数字
# list_result = []
# for x in range(1,7):
#     for y in range(1,7):
#         for z in range(1,7):
#             list_result.append((x,y,z))
list_result = [(x, y, z) for x in range(1, 7) for y in range(1, 7) for z in range(1, 7)]
print(list_result)

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/798752.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-06
下一篇2022-05-06

发表评论

登录后才能评论

评论列表(0条)

    保存