2013-05-06 95 views
0

我如何在python中编码,以便当用户输入3时,系统将输出3 ^? 例如,读取输入和输出结果

userinput: 3 
system: ^^^ 
userinput: 4 
system: ^^^^ 

我应该使用一个for循环和循环过来的吗?我非常新的python,请帮助。谢谢!

+0

'打印 '^' * INT(的raw_input( ))for python2和'print('^'* int(input()))'for python3 – 2013-05-06 08:12:39

回答

3

在其非常简单的形式:

from_input = raw_input() 
print int(from_input) * '^' 

这将解析输入字符串为整数。 但是,这里需要注意的是,如果您将其他字符串解析为其他字符,将会引发ValueError

一个更安全的方法将被

from_input = raw_input() 
try: 
    int(from_input) * '^' 
except ValueError: 
    print "Can't cast {0} to int".format(from_input) 
+4

您可能想要更改变量的名称; 'input'也是一个函数,在这段代码之后,这个函数将无法访问。 – Dogbert 2013-05-06 07:13:08

+0

@Dogbert谢谢,有时我会忘记我自己! :) – 2013-05-06 07:16:59

+1

@limelights它也不是*铸造*它*解析*输入到一个int。 – HennyH 2013-05-06 07:22:54

0

首先,检查输入。 然后

print('^'*i) 
0

在Python3(在Python2,则应该输入使用的raw_input)

>>> x = input("userinput: ") 
userinput: 4 
>>> print("{:^^{}}".format("", x)) 
^^^^ 

或程序

x = input("userinput: ") 
print("{:^^{}}".format("", x))