目录
题目
读入一个整数N,N是奇数,输出由星号字符组成的等边三角形,要求:
第1行1个星号,第2行3个星号,第3行5个星号,依次类推,最后一行共N的星号。
示例
输入
3
输出
*
***
Python源码
N = eval(input('请输入一个奇数:'))
for i in range(1,N+1,2):
print('{0:^{1}}'.format('*' * i,N))
注释
N = eval(input('请输入一个奇数:'))
获得N值,eval()消去引号
for i in range(1,N+1,2):
- range()生成了从1到N+1的数,且步长为2,即生成1,3,5,......,N+1。
- for循环语句遍历此序列。
print('{0:^{1}}'.format('*' * i,N))
- {0:^{1}}创建了两个索引,{0}对应'*' * i,代表*被重复i次。
- {1}对应N,代表最后一行代码的宽度,相当于三角形的边长。
- 替换后为{'*' * i:^N},表示在宽度为N的代码行中,冒号前面的字符串居中对齐。
程序结果
相关阅读
Python eval() 函数
https://www.w3school.com.cn/python/ref_func_eval.asp
Python range() 函数
https://www.w3school.com.cn/python/ref_func_range.asp
Python 字符串 format()
https://www.w3school.com.cn/python/ref_string_format.asp