如何解决在直角三角形中排列字母
我想将字母排列成直角三角形。一个例子是:- inp='''1''' out=_A_
,inp='''3''' out= _A_\n_A_B_\n_A_B_C_
。这是我迄今为止尝试过的:-
def letter_range(start,end):
for i in range(start,end):
# inner loop
for j in range(65,i + 1):
print(f"_{chr(j)}_",end = "")
print()
def main():
x = int(input())
y = int(65 + x)
# calling Function
letter_range(65,y)
if __name__ == "__main__":
main()
#Results
inp = 3
out:-
_A_
_A__B_
_A__B__C_
我只想要在每个字母之后和之前的单个下划线。请帮忙
解决方法
使用 str.join
的一种方式
from string import ascii_uppercase
def letters(n):
return "_%s_" % "_".join(ascii_uppercase[:n])
输出:
for i in [1,2,3]:
print(i,letters(i))
1 _A_
2 _A_B_
3 _A_B_C_
,
尝试更换
for j in range(65,i + 1):
print(f"_{chr(j)}_",end = "")
print()
与
for j in range(65,i + 1):
print(f"_{chr(j)}",end = "")
print('_')
,
你可以。
string
模块非常有用。 ascii_uppercase
包含所有大写字母。所以你可以对字符串使用索引,然后使用 str.join()
from string import ascii_uppercase
for i in [1,3]:
print(f"_{'_'.join(ascii_uppercase[:i])}_")
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。