python之双for循环

21 篇文章 0 订阅
6 篇文章 0 订阅
"""
双层for循环
"""

'''
#exercise01
在终端打印
*#*#
*#*#
*#*#
*#*#
'''
#外层循环控制行
for i in range(4):
  #内层循环控制列
  for j in range(4):
    if j % 2 == 0:
      print("*",end="")
      continue
    print("#",end="")
  print()
  
'''
打印
*
**
***
****
'''
for i in range(4): #i= 0  1 2 3 
  for j in range(i+1): # j=1 2 3 4
    print("*",end="")
  print()

'''
exercise02
列表排序(升序) [3,80,45,5,7,1]
目标:列表中所有元素两两比较
思想:
  取出第一个元素,与后面元素进行比较;
  取出第二个元素,与后面元素进行比较
  取出第三个元素,与后面元素进行比较
  ....
  取出倒数第二个元素,与后面元素进行比较。
  若是取出的元素大于后面的元素,则交换
  
'''

list01 = [3,80,45,5,7,1]
#推导过程 将其中变化的量提成变量
#list01[0] list01[1]
#list01[0] list01[2]
#list01[0] list01[3]
#取出第一个元素,与后面元素进行比较
#for i in range(1,len(list01)):
# list01[0] list01[i]
#取出第二个元素,与后面元素进行比较
#for i in range(2,len(list01)):
#list01[1] list01[i]
#for i in range(3,len(list01)):
#取出第三个元素,与后面元素进行比较
# list01[3] list01[i]

#取数据
for i in range(len(list01)-1):
  #作比较
  for j in range(i+1,len(list01)):
    if list01[i] > list01[j]: #倒序,将'>'改为'<
      list01[i],list01[j] = list01[j],list01[i]
      
print(list01)

'''
exercise03
矩阵转置 将二维列表的列变成行
[ [1,2,3,4],
  [5,6,7,8],
  [9,10,11,12],
  [13,14,15,16]]
'''
list02 =[ [1,2,3,4],
  [5,6,7,8],
  [9,10,11,12],
  [13,14,15,16]]
new_list = []
for i in range(len(list02[0])):
  line = []
  for j in range(len(list02)):
    line.append(list02[j][i])  #将j列i个数字添加到line
  new_list.append(line)
  
print(new_list)

'''
列表推导式嵌套
'''
list03 = ["a","b","c"]
list04 = ["d","e","f"]
new_list01 = []
for i in list03:
  for j in list04:
    new_list01.append(i+j)
    
print(new_list01)

new_list02 = [i+j for i in list03 for j in list04]
print(new_list02)

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

墨非墨Lg

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值