吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2066|回复: 25
收起左侧

[Python 转载] python循环嵌套的练习

  [复制链接]
tommylee1 发表于 2022-1-10 23:37
为了加深对python循环嵌套的的理解,利用Python打印如下的三角形。自己看的学习教程只有前三个三角形的代码,最后一个是我自己扩展出来的。刚开始自己根本写不出来,只能自己一边纸上画,最后实在弄不懂,直接复制代码,然后进行断点调试,终于是解决了,真不容易。


*
**
***
****
*****
    *
   **
  ***
 ****
*****
    *
   ***
  *****
 *******
*********

*   *   *   *   *   
  *   *   *   *   
    *   *   *   
      *   *   
        *   

但是最后一个自己扩展的那个三角形代码写的不是很完美,甚至觉得很糟糕,因为我实在想不出来办法,只能这样写。希望有大佬可以帮忙解决优化一下。

print("-------------0--------------")
row = int(input("row = "))
for i in range(row):
    for _ in range(i + 1):
        print("*", end= " ")
    print()
print("-------------1--------------")
for i in range(row):
    for j in range(row):
        if j < row - i -1:
            print(" ", end= "")
        else:
            print("*", end= "")
    print()
print("------------2---------------")
for i in range(row):
    for _ in range(row - i - 1):
        print(' ', end=' ')
    for _ in range(2 * i + 1):
        print('*', end=' ')
    print()
print("-------------3--------------")
for i in range(row):
    for _ in range(i):
        print(" ", end= " ")
    for _ in range(row - i):
        print("*""  ", end= " ")
    print()


python教程:https://github.com/jackfrued/Python-100-Days
配套的视频教程:https://www.bilibili.com/video/BV1FT4y1R7sz
屏幕截图 2022-01-10 232109.png
2022-01-10_233125.png

免费评分

参与人数 2吾爱币 +2 热心值 +2 收起 理由
yyb414 + 1 + 1 热心回复!
夫子点灯 + 1 + 1 谢谢@Thanks!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

 楼主| tommylee1 发表于 2022-1-11 13:40
本帖最后由 tommylee1 于 2022-1-11 13:42 编辑

我这只能是用我目前学到的知识来解决问题了,能力有限,最后一个倒三角好像总感觉有问题。本来我是想让它和第三个一样来着,但是操作起来不会了,所以只能这样搞
FeiyuYip 发表于 2022-1-11 17:34
tommylee1 发表于 2022-1-11 17:24
太厉害了吧,有点看不懂了,看着头大

上机跑一下就知道了,循环嵌套的代码靠看可能有难度。
首先我是分开写的,你先看那个,应该不难。
后面我发现比较类似,所以写到了一起。
FeiyuYip 发表于 2022-1-11 17:25
FeiyuYip 发表于 2022-1-11 16:33
本帖最后由 FeiyuYip 于 2022-1-11 16:37 编辑
FeiyuYip 发表于 2022-1-11 16:22
x = 10
for i in range(x, 0, -1):
    print(' ' * (x - i), '* ' * i)

x = 10
for i in range(1, x + 1):
    print(' ' * (x - i), '* ' * i)

[Python] 纯文本查看 复制代码
x = 10
for i in range(0, x):
    print(' ' * i, '* ' * (x - i), ' ' * i, ' ' * (x - i), '* ' * (i + 1))


这样则可以实现正、倒两个三角形同时打印出来。
Triple.J 发表于 2022-1-11 01:32
很有用,谢谢大佬的分享。
w547890 发表于 2022-1-11 07:41

很有用,谢谢大佬的分享。
zasd9999 发表于 2022-1-11 07:42
建议多了解range函数的参数,默认是从0开始,但可以设置从1开始,这样代码会更直观。
三滑稽甲苯 发表于 2022-1-11 08:22
本帖最后由 三滑稽甲苯 于 2022-1-11 08:25 编辑

python有个很有用的特性,就是可以直接整数与字符串相乘,用这个方法应该能简化不少代码
另外,"*""  "里中间两个引号是干啥子的?我好像没有看到过这种写法,居然能运行...

免费评分

参与人数 1吾爱币 +1 热心值 +1 收起 理由
tommylee1 + 1 + 1 谢谢@Thanks!

查看全部评分

ll090822 发表于 2022-1-11 08:31
谢谢分享 学习学习
 楼主| tommylee1 发表于 2022-1-11 09:11
三滑稽甲苯 发表于 2022-1-11 08:22
[md]python有个很有用的特性,就是可以直接整数与字符串相乘,用这个方法应该能简化不少代码
另外,`"*""  ...

这个我是实在不会了,才用的这种笨办法,希望有大佬可以解决一下
 楼主| tommylee1 发表于 2022-1-11 09:30
zasd9999 发表于 2022-1-11 07:42
建议多了解range函数的参数,默认是从0开始,但可以设置从1开始,这样代码会更直观。

谢谢建议
kenxy 发表于 2022-1-11 09:31
好好学习,天天向上
YR0207 发表于 2022-1-11 09:50
今天刚在学循环嵌套
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 11:06

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表