python - 在python中将类似字符串的对象转换为字符串

标签 python string types type-conversion

我正在使用 python 和 XMLBuilder,这是我从互联网 (pypi) 下载的模块。它返回一个对象,其工作方式类似于字符串(我可以执行 print(x)),但是当我使用 file.write(x) 时,它会崩溃并在 XMLBuilder 模块中抛出错误。

我只是想知道如何将它返回的对象转换为字符串?

我已确认我正在正确写入文件。

我已经尝试过例如 x = y,尽管正如我所想,它只是创建了一个指针,而且 x=x+"" put 我仍然收到错误。它还返回一个带有“\n”的类似字符串的对象。

任何有关此事的帮助将不胜感激。

最佳答案

file.write(str(x))

可能适合你。

背景信息:大多数类型都有一个函数__str____repr__ (或两者)定义。如果您将这种类型的对象传递给 print,它会识别出您没有传递 str 并尝试调用这些函数之一以将对象为字符串。

但是,并非所有函数都像 print 一样智能,如果您向它们传递非字符串的内容,它们就会失败。此外,字符串连接不适用于混合类型。要使用这些函数,您必须手动转换非字符串类型对象,方法是用 str() 包装它们。例如:

x = str(x)+" "

这将创建一个新字符串并将其分配给变量x,该变量之前保存了该对象(您现在失去了该对象!)。

关于python - 在python中将类似字符串的对象转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17136085/

相关文章:

c++ - 为什么我的随机字符串生成器生成的字符串太短?

python - 最有效的方法(lo <= k && k <= hi)? 1 : 0 for k a numpy array, lo, hi 常量

python - 我们可以限制任何机器学习算法中响应变量的值吗?

javascript - 为什么在 javascript 中分配给字符串的一部分(使用数组语法)不会引发错误?

scala - 高阶函数中的类型定义和类型不匹配

MySQL:BOOLEAN(又名 tinyint(1))与 BIT

Scala - 使用方法创建用户类型

python - 限制qgraphicitem的可移动区域

python ,XPath : Find all links to images

Java Buffered reader 堆空间不足