对Python和一般的编码都很陌生! try 得到一个星形图案,看起来像这样:

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

使用for循环来工作,但我只允许使用单个for循环,并在内部嵌入一个if/else语句以使其工作.如果我可以使用2 for循环,我会知道怎么做,但不知道为什么我的当前解决方案不工作,因为它只输出前5行星,然后停止.感谢任何帮助:)

我当前的代码库:

print("Pattern: ")

# Stores the * as a variable, not entirely necessary but negates having to type out "*" 
star = "*"

for i in range(9):
    if i in range(5):
     print(star * (i + 1))
    elif i in range(4, 0, -1):
       print(star * i)

推荐答案

正如其他人在 comments 中提到的,你的range() struct 是有缺陷的.

你可以通过在if else中使用><来简化方法,如下所示:

print("Pattern: ")

star = "*"

for i in range(9):
    if i < 5:
        print(star * (i + 1))
    else:
        print(star * (9 - i))

Python相关问答推荐

使用polars .滤镜进行切片速度比pandas .loc慢

如何使用Google Gemini API为单个提示生成多个响应?

从webhook中的短代码(而不是电话号码)接收Twilio消息

替换字符串中的多个重叠子字符串

当多个值具有相同模式时返回空

Vectorize多个头寸的止盈/止盈回溯测试pythonpandas

切片包括面具的第一个实例在内的眼镜的最佳方法是什么?

如何在类和classy-fastapi -fastapi- followup中使用FastAPI创建路由

如何过滤包含2个指定子字符串的收件箱列名?

修复mypy错误-赋值中的类型不兼容(表达式具有类型xxx,变量具有类型yyy)

从嵌套的yaml创建一个嵌套字符串,后面跟着点

Python导入某些库时非法指令(核心转储)(beautifulsoup4."" yfinance)

使用Python从URL下载Excel文件

如何从需要点击/切换的网页中提取表格?

替换现有列名中的字符,而不创建新列

如何在Python请求中组合多个适配器?

在用于Python的Bokeh包中设置按钮的样式

如果不使用. to_list()[0],我如何从一个pandas DataFrame中获取一个值?

Polars定制函数返回多列

仅取消堆叠最后三列