在Python中整数转换为string?

我想在Python中将整数转换为string。 我徒劳地说:

t=raw_input() c=[] for j in range(0,int(t)): n=raw_input() a=[] a,b= (int(i) for i in n.split(' ')) d=pow(a,b) d.str() c.append(d[0]) for j in c: print j 

当我尝试将其转换为string时,它显示像int这样的错误,没有任何称为str属性。

 >>> str(10) '10' >>> int('10') 10 

文档链接:

  • int()
  • str()

这个问题似乎来自这一行: d.str()

使用内build的str()函数完成对string的转换,该函数基本上调用其参数的__str__()方法。

另外,不应该有必要调用pow() 。 尝试使用**运算符。

尝试这个:

 str(i) 

Python中没有types转换,也没有types转换。 你必须以明确的方式转换你的variables。

要转换string中的对象,请使用str()函数。 它可以与定义了__str__()方法的任何对象一起使用。 事实上

 str(a) 

相当于

 a.__str__() 

如果你想把某些东西转换成int,float等等

 a = 2 

你可以使用str(a)给你一个int(2)的string对象。

要pipe理非整数input:

 number = raw_input() try: value = int(number) except ValueError: value = 0 

好吧,如果我把你最新的代码,重写一下,让它与Python的工作:

 t=raw_input() c=[] for j in range(0,int(t)): n=raw_input() a=[] a,b= (int(i) for i in n.split(' ')) d=pow(a,b) d2=str(d) c.append(d2[0]) for j in c: print j 

它给了我一些东西:

 >>> 2 >>> 8 2 >>> 2 3 6 8 

这是string结果pow(a,b)的第一个字符。 我们在这里做什么?

 >>> i = 5 >>> s = str(5) >>> print "Hello, world the number is " + s Hello, world the number is 5 

在我看来,最体面的方式是“。

 i = 32 --> `i` == '32'