Python:如何保留转换后的字符串?

时间:2014-07-18 13:22:49

标签: python

我正在尝试保留一个我从整数转换的字符串。我可以将一个int变量转换为一个字符串,但是我似乎无法与之交互。以下是它在Python shell中的用法:

a = 100
a
>>> 100
str(a)
>>> '100'
a
>>> 100
str(a) = b
>>> SyntaxError: can't assign to function call

我需要的是将这个'100'字符串变成一个新变量。我试过搜索;答案可能就在那里,但我显然没有使用正确的搜索词。我发现的所有答案都只关注如何从一种类型转换为另一种类型。

3 个答案:

答案 0 :(得分:3)

您遇到的问题不是您认为遇到的问题。

在Python中定义变量时,变量位于等号的左侧。它应该是这样的:

b = str(a)

这将定义 b ,而不会给出错误消息。回到你的问题,如果你想将 a 更改为字符串并保持这种方式, str(a)是不够的。代替:

a = str(a)

将您的变量更改为字符串。 str(a)只是一个以字符串形式返回变量 a 的函数。如果您未在此处重新定义 a str(a)将不会返回任何地方,您的字符串将会丢失。

答案 1 :(得分:1)

您的作业语法会回到最前面。目标名称在左侧

b = str(a)

现在b是对str()的返回值的引用。

您还可以重新分配回a,用字符串表示替换旧的整数值:

a = str(a)

您尝试使用str(a)作为分配目标; Python不能让你这样做,因为编译代码时str(a)的结果是未知的;你不能将任何对象绑定到另一个对象,你需要有一个引用(所以一个名称,一个属性,一个列表索引,或一个字典键等)。

答案 2 :(得分:0)

b = str(a)

取代

str(a)=b

您遇到错误,因为您正在尝试为函数str()

赋值
>>> SyntaxError: can't assign to function call