Converting integer to string in Python?
我想用python把一个整数转换成一个字符串。我打字是徒劳的:
1 2 | d = 15 d.str() |
当我试图将其转换为字符串时,它显示了一个错误,比如
1 2 3 4 | >>> str(10) '10' >>> int('10') 10 |
文档链接:
int() str()
问题似乎来自这一行:
转换为字符串是通过内置的
试试这个:
1 | str(i) |
python中没有类型转换和类型强制。必须以显式方式转换变量。
要转换字符串中的对象,可以使用
1 | str(a) |
等于
1 | a.__str__() |
如果您想将某些内容转换为int、float等,也是一样的。
要管理非整数输入:
1 2 3 4 5 | number = raw_input() try: value = int(number) except ValueError: value = 0 |
好吧,如果我把你最新的代码改写一下,让它和python一起工作:
1 2 3 4 5 6 7 8 9 10 11 | 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 |
它给我的感觉是:
1 2 3 4 5 | >>> 2 >>> 8 2 >>> 2 3 6 8 |
它是字符串结果
1 2 3 4 5 6 | >>> i = 5 >>> print"Hello, world the number is" + i TypeError: must be str, not int >>> s = str(i) >>> print"Hello, world the number is" + s Hello, world the number is 5 |
在python=>3.6中,可以使用
1 2 3 4 | >>> int_value = 10 >>> f'{int_value}' '10' >>> |
我认为最体面的方式是```。
1 | i = 32 --> `i` == '32' |
对于希望将int转换为特定数字的字符串的用户,建议使用以下方法。
1 | month ="{0:04d}".format(localtime[1]) |
有关更多详细信息,可以参考具有前导零的堆栈溢出问题显示编号。
可以使用
1 2 3 | >>>"%s" % 10 '10' >>> |
(或)
1 2 3 | >>> '{}'.format(10) '10' >>> |