如何在Python中用逗号解析字符串?
在python中将字符串解析为函数时遇到问题如何在Python中用逗号解析字符串?,python,string,Python,String,在python中将字符串解析为函数时遇到问题 def logAppend(self, data): print(data) 当我在上面的代码中解析带有逗号的字符串时,它将返回以下内容 TypeError:logAppend()只接受2个参数(给定3个) 我对Python有点陌生,所以如果我这里缺少一些简单的东西,请不要客气。不清楚您的字符串是什么,但是如果您假设它是(self,data),那么这两个东西实际上是函数的变量。可以调用字符串,或者更可能调用字符串列表,例如['string1
def logAppend(self, data):
print(data)
当我在上面的代码中解析带有逗号的字符串时,它将返回以下内容
TypeError:logAppend()只接受2个参数(给定3个)
我对Python有点陌生,所以如果我这里缺少一些简单的东西,请不要客气。不清楚您的字符串是什么,但是如果您假设它是(self,data),那么这两个东西实际上是函数的变量。可以调用字符串,或者更可能调用字符串列表,例如['string1'、'string2']。能否将字符串放入以便我们查看?是的,请提供所有代码和输出。我们需要更好的上下文来理解这个问题。查看您发布的错误,您的字符串似乎正好有一个逗号,并且您没有将其作为字符串传递。相反,它可能看起来像这样:嗨,你好!而不是“你好!”。因此,在前一种情况下,一个逗号使Python相信您正在传递2个参数,默认情况下传递1个“this”指针。因此,Python认为您正在传递3个参数,因此出现了错误。因此,请将字符串括在引号中,然后将其传递给函数。
logAppend
获取的参数太多。它是我假设的类的一部分,因为它将self
作为参数。调用类成员时,self
被隐式传递给它,因此您已经有了一个参数,只需向它提供数据
。您的调用应该如下所示:my_object.logAppend(data)。您确定是指“带逗号的字符串”吗?听起来很像“我将两个变量以逗号分隔的方式传递给函数,但我从未用任何编程语言编写过函数代码,因此我不明白这是在做什么……”。self
不会显式传递,调用站点的名称也不一定与函数中的名称有任何关系。如果OP实际上传递了一个真正的列表
,则不会导致参数计数问题(除非他们使用*
解包,但可能性较小)。发布的答案只不过是猜测,并没有真正的帮助。