我正在尝试从用户那里获得输入,并希望将值存储在矩阵中。我正在使用Python 2.7并有一个获取输入的代码。但我收到的错误是:
Traceback (most recent call last):
File "C:/.../sim.py", line 18, in <module>
print 'Please enter the equitities'
File "<string>", line 1, in <module>
NameError: name 'AAPL' is not defined
这是我的代码:
ls_symbols_cnt = input('Enter the number of equities')
i = 0
n = 0
print 'Please enter the equities'
while n<=ls_symbols_cnt:
ls_symbols[i,n] = input('Enter equity %n')
n =+ 1
我做错了吗?有没有办法使用numpy来获取矩阵的值?感谢您的输入。
将其更改为raw_input后,我收到此错误:
Traceback (most recent call last):
File "C:/Users/Rohit/Downloads/Computational_Investing/Hw-1/sim.py", line 21, in <module>
ls_symbols[i,n]= raw_input('Enter equity')
NameError: name 'ls_symbols' is not defined
我不确定为什么它的名字没有定义。感谢您的投入!
答案 0 :(得分:1)
input()将尝试评估用户输入的内容。这是一个令人困惑的命名功能。你想要raw_input()。
例如,如果用户输入“2 + 3”:
raw_input()
=> 5
input()
=> "2+3"
请注意,如果您需要字符串以外的其他内容,则必须自行执行转换。如果用户输入“42”并且您想要数字42而不是字符串“42”,那么您将需要int(raw_input())。