speed_of_light = 299792458.0
cycles_per_second = 2700000000.0
speed_of_light/cycles_per_second = x
print(x)上面的方法是有效的,但是当我这样做的时候,我得到了一个错误?这里的X是一个字符串。
speed_of_light = 299792458.0
cycles_per_second = 2700000000.0
speed_of_light/cycles_per_second = 'x'
print('x')
%run "/tmp/tmpMFc4pM.py"
File "/tmp/tmpMFc4pM.py", line 5
'x' = speed_of_light/cycles_per_second
> SyntaxError: can't assign to literal发布于 2013-10-28 10:37:29
也许你的意思是:
speed_of_light = 299792458.0
cycles_per_second = 2700000000.0
x = speed_of_light/cycles_per_second
print (x)到目前为止,每个人都已经指出,变量应该在左边,然后是等号,然后(在右边)你想放入变量中的东西。
发布于 2013-10-28 10:38:02
您不能将赋值给计算。
speed_of_light/cycles_per_second = 'x'是一种赋值,而不是数学意义上的相等。
您可能打算反其道而行之,将x设置为speed_of_light/cycles_per_second。换句话说,将speed_of_light/cycles_per_second赋值给x
x = speed_of_light/cycles_per_second请注意,x没有放在引号中(这将使其成为字符字面量),而是简单地放在x中,这意味着它是一个变量,可以保存分配给它的任何值。
例如,你可以这样说
age = 20但不是
20 = age虽然在数学上它们是等价的,但第二个赋值会给出你收到的错误消息(SyntaxError: can't assign to literal)。换句话说,您试图将一个值赋给一个文字(20),该文字不能包含除它所表示的值以外的任何其他值。
发布于 2013-10-28 10:38:21
如错误所示,您不能将变量数量赋给像x这样的字符串文字。这就好比说字符串"ice cream“现在等于2.71。这没有意义。
另外,赋值语法颠倒了。将其更改为
x = speed_of_light/cycles_per_second这意味着取右边的值,并将它赋给左边的变量。
https://stackoverflow.com/questions/19626353
复制相似问题