2011-04-18 92 views
-3

我使用Python中的String和需要更新它%和,在一个字符串中有什么区别?

line = '' 
byte_data = 0 

是什么(他们做了什么)这两种语法之间的区别:字符串

line += "%c" % byte_data 

line += "%c", byte_data 
+3

当你跑这个,你看到了什么差异?请在你的问题中包含输出。另外,你是否尝试使用'print'来查看差异是什么?最后,你在Python语言手册中读到了什么?你可以请包括一个报价或链接到您阅读的网页?如果你包括你所做的研究,以及你发现使你困惑的**特定**事情,它会有所帮助。 – 2011-04-18 10:09:06

+3

总是包含这个:你想做什么,你为什么试图去做,它以哪种方式不成功? – 2011-04-18 12:18:45

回答

3

不同之处在于其中一种是有效的,而另一种则没有。

>>> line = '' 
>>> byte_data = 0 
>>> line += "%c" % byte_data 
>>> line 
'\x00' 
>>> line += "%c", byte_data 

Traceback (most recent call last): 
    File "<pyshell#4>", line 1, in <module> 
    line += "%c", byte_data 
TypeError: cannot concatenate 'str' and 'tuple' objects 
>>> 

我不太确定你在哪里看到逗号用来填充字符串,但不幸的是会导致TypeError。

相关问题