Python I';我对如何从用户输入中打印多个输出有问题
我是一个编程新手,被设定了一个任务,我必须向用户询问姓名和号码。我必须打印姓名,每个字母都打印在单独的一行上。第二部分是,我必须要求用户输入一个数字,然后它将根据用户给定的数字重复相同的输出 我的代码:Python I';我对如何从用户输入中打印多个输出有问题,python,python-3.x,Python,Python 3.x,我是一个编程新手,被设定了一个任务,我必须向用户询问姓名和号码。我必须打印姓名,每个字母都打印在单独的一行上。第二部分是,我必须要求用户输入一个数字,然后它将根据用户给定的数字重复相同的输出 我的代码: name = input("Please enter your name:") num = input("Please enter a number:") for index,letter in enumerate(name,1): for num
name = input("Please enter your name:")
num = input("Please enter a number:")
for index,letter in enumerate(name,1):
for num in range(0,9):
print(letter)
我期望的结果是:
Please enter your name: Taki
Please enter a number: 3
T
a
k
i
T
a
k
i
T
a
k
i
Please enter your name: Taki
Please enter a number:3
T
T
T
T
T
T
T
T
T
a
a
a
a
a
a
a
a
a
k
k
k
k
k
k
k
k
k
i
i
i
i
i
i
i
i
i
结果是:
Please enter your name: Taki
Please enter a number: 3
T
a
k
i
T
a
k
i
T
a
k
i
Please enter your name: Taki
Please enter a number:3
T
T
T
T
T
T
T
T
T
a
a
a
a
a
a
a
a
a
k
k
k
k
k
k
k
k
k
i
i
i
i
i
i
i
i
i
Plz help您的循环顺序错误。您的范围应该是到
num
而不是9
name = input("Please enter your name:")
num = input("Please enter a number:")
for i in range(num):
for letter in name:
print(letter)
蛮力方法是
name = input('Enter a name: ')
num = int(input('Enter a number: '))
for i in range(num):
for j in name:
print(j)
这里,name
是一个字符串,它在j循环中的每个字符上迭代
在代码中,从0到9的num
循环是错误的。您需要打印num
次,而不是9次(0-9)。因此,范围必须是i in range(num)
。这就是为什么每个字符在输出中被打印9次
另外,记住将变量cast
num
转换为int
,同时将输入作为Python默认情况下将所有输入作为字符串处理。另一种方法是使用itertools:
import itertools
count = 0
name = input("Please enter your name:")
num = int(input("Please enter a number:"))
for i in itertools.cycle(name):
if count > num * len(name)-1:
break
else:
print(i, end = "\n")
count += 1