python使用for in循环输出菱形

python使用for in循环输出菱形


刚开始接触python有点不太适应,之前都是熟悉点java,是在校大学生,发出来也是希望大家看看我自己的理解同时能够得到大家一些指导帮助。(这里谢谢大家)
接触这个题目时第一想法就是用java的思维照搬过来,但是python里的for in循环里range遍历不会到最后一个数,导致很尴尬一时半会不知道怎么办,便想到输入变量后在加一放入range里。。

这是java代码:

Scanner sc=new Scanner(System.in);
		int n=sc.nextInt();
       for (int i = 1; i<=n; i++) {
    	   for (int j =1; j <=(n-i); j++) {
				System.out.print(" ");
			}
		    for (int z = 1; z <=2*i-1; z++) {
				System.out.print("*");
			}
		    System.out.println();
	}
      for (int i = n-1; i >0; i--) {
		for (int j = 0; j < n-i; j++) {
			System.out.print(" ");
		}
		for (int j = 0; j <2*i-1 ; j++) {
			System.out.print("*");
		}
		System.out.println();
	} 

这是python代码:

b=int(input("输入一个数"))
a=b+1
for i in range(1,a):
    for x in range(a-i):
        print(" ",end="")
    for y in range(2*i-1):
        print("*",end="")
    print()
for j in range(a-2,0,-1):
    for w in range(a-j):
        print(" ",end="")
    for z in range(2*j-1):
        print("*",end="")
    print()

输出下边的三角形时我想的是从a-1开始遍历因为上半的range里的a不会遍历到所以写了a-2。
结果是:

4
    *
   ***
  *****
 *******
  *****
   ***
    *

希望大家看了后说说自己的想法,自己感觉这个挺麻烦的,有问题希望能够指出,先感谢

Python中,可以使用嵌套的for循环输出菱形图案。以下是一个示例代码: number = int(input("请输入你想打印的行数: ")) for i in range(0, number): for j in range(0, number - i): print(end=" ") for k in range(0, i * 2 - 1): print("*", end=" ") print() for i in range(0, number - 1): for j in range(0, i + 2): print(end=" ") for k in range(0, (number - i - 1) * 2 - 1): print("*", end=" ") print() 这段代码中,通过使用嵌套的for循环来控制每一行的输出。第一个for循环用于控制行数,第二个for循环用于输出每行的空格,第三个for循环用于输出每行的星号。第二个for循环和第三个for循环的范围会根据当前行数进行调整,以实现菱形的形状。请根据需要修改输入行数来输出不同大小的菱形图案。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [python使用for in循环输出菱形](https://blog.csdn.net/whitebaiwen/article/details/115052950)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* [python for循环打印菱形详解](https://blog.csdn.net/yuhavefreedom/article/details/130815253)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

whitebaiwen

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

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

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

打赏作者

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

抵扣说明:

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

余额充值