#python #python-3.x #alphabetical
Вопрос:
Я хочу расположить алфавиты в прямоугольном треугольнике. Одним из примеров является:- inp=»1″ выход= _A_
, inp=»3″ выход= _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_
Мне просто нужны отдельные подчеркивания после и перед каждым алфавитом. Пожалуйста, помогите
Ответ №1:
Попробуйте заменить
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('_')
Ответ №2:
Один из способов использования 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_
Ответ №3:
Вы можете сделать. string
модуль может быть очень полезен. ascii_uppercase
содержать все заглавные буквы. Таким образом, вы можете использовать индексацию для строки, а затем использовать str.join()
from string import ascii_uppercase
for i in [1,2,3]:
print(f"_{'_'.join(ascii_uppercase[:i])}_")