在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'