1585

如何将整数转换为字符串?

42   ⟶   "42"

相反,请参见如何将字符串解析为float或int?.Float可以类似地处理,但处理小数点可能很棘手,因为浮点值不精确。请参阅将浮点转换为字符串而不舍入以获得更具体的建议。

0

14答案14

重置为默认值
2339
>>>str(42)'42'>>>整数('42')42

文档链接:

字符串(x)转换任何对象x个调用字符串x。__字符串_(),或报告(x)如果x个没有__字符串_()方法。

0
153

试试这个:

str(i)
0
71

Python中没有类型转换和类型强制。您必须以显式方式转换变量。

要将对象转换为字符串,请使用str()功能。它适用于具有名为__字符串_()定义。事实上

字符串(a)

等于

a.___str__()

如果您想将某些内容转换为整数,浮动等。

1
  • 这个解决方案帮助了我,我将字母数字字符串转换为数字字符串,用它们的ascii值替换字母,但是直接使用str()函数不起作用,但str(。示例(python2.7);s=“14.2.2.10a2”非工作代码:print“”.join([str(ord(c
    – 贾扬特
    评论 2020年5月7日5:49
20

要管理非整数输入:

数字=绘制输入()尝试:value=int(数字)除ValueError:值=0
18
>>>i=5>>>打印“你好,世界号码是”+iTypeError:必须是str,而不是int>>>s=str(i)>>>打印“你好,世界号码是”+s你好,世界,号码是5
15

对于Python 3.6,可以使用f字符串转换为字符串的新功能,与str()函数相比速度更快。它的用法如下:

年龄=45strAge=f“{age}”

为此,Python提供了str()函数。

数字=10print(type(digit))#将显示<class'int'>convertedDigit=str(数字)print(type(convertedDigit))#将显示

有关更详细的答案,您可以查看本文:将Python Int转换为String,将Pytython String转换为Int

1
  • 这种方法的优点是,它也可以接受浮点,而无需更改任何内容,尽管它可能无法完全按照您想要的方式处理十进制数字。您可以显式指定如何处理小数,但随后它将停止接受整数。 评论 2022年8月10日2:27
13

在Python=>3.6中,您可以使用(f)格式化:

>>>int值=10>>>f“{int_value}”'10'>>>
0
8

在我看来,最得体的方式是` `。

i=32-->`i`=='32'
2
  • 注意,这相当于报告(i),所以很长一段时间都会很奇怪。(尝试i=`2**32`;打印i)
    – 用户4237459
    评论 2015年5月19日15:46
  • 20
    这在python 2中已被弃用,在python3中已被完全删除,因此我建议不再使用它。docs.python.org/3.0/whatsnew/3.0.html#removed-syntax 评论 2015年7月13日18:47
8

您可以使用%秒.格式:

>>>“%s”%10'10'>>>

或者:

>>>{}格式(10)'10'>>>
7

对于希望将int转换为特定数字的字符串的人,建议使用以下方法。

month=“{0:04d}”.format(本地时间[1])

有关更多详细信息,可以参考堆栈溢出问题显示带前导零的数字.

5

随着引入f字符串在Python 3.6中,这也适用于:

f“{10}”=“10”

它实际上比打电话快str(),以可读性为代价。

事实上,它比%x个字符串格式和.format()!

1

在python中,有几种方法可以将整数转换为字符串。您可以使用[str(integer here)]函数、f-string[f'{integer there}']、.format()函数['{}'.format。所有这些方法都可以将整数转换为字符串。

参见下面的示例

#将整数转换为字符串的示例#使用str()函数数字=1convert_to_string=str(数字)print(type(convert_to_string))#output(<class'str'>)#使用f-string数字=1convert_to_string=f“{number}”print(type(convert_to_string))#output(<class'str'>)#使用{}'.format()函数数字=1convert_to_string={}格式(数字)print(type(convert_to_string))#output(<class'str'>)#使用“%s”%关键字数字=1convert_to_string=“%s”%编号print(type(convert_to_string))#output(<class'str'>)
1
  • 对于数字,%我%d日可能与%秒.如果是一个int,打印(“数字是%i.”%number)也会起作用 评论 2023年10月9日18:40
0

下面是一个更简单的解决方案:

一个=“1”打印(int(one))

输出控制台

>>> 1

在上述程序中,int()用于转换整数的字符串表示形式。

注:只有当变量完全由数字组成时,字符串格式的变量才能转换为整数。

以同样的方式,str()用于将整数转换为字符串。

数字=123567a=[]a.append(字符串(数字))打印(a)

我使用列表打印输出,以突出显示变量(a)是字符串。

输出控制台

>>> ["123567"]

但要了解列表存储字符串和整数的区别,请先查看下面的代码,然后查看输出。

代码

a=“这是一个字符串,下一个是整数”列表=[a,23]打印(listone)

输出控制台

>>>[“这是一个字符串,下一个是整数”,23]
1
  • 请问我的文章是否有用?
    – 晶体芯
    评论 2020年7月3日10:02
0

你也可以打电话格式():

格式(42)#42-->“42”

如果要添加千位分隔符:

编号=123456789格式(num,“,”)#“123456789”f“{num:,}”“{:,}”.format(num)

或转换为浮点的字符串表示

格式(num,“,.2f”)#“123456789.00”f“{num:,.2f}”“{:,.2f}”.format(num)

对于“欧洲”分隔符:

格式(num,“_.2f”).replace('.',',').replay('_','.')#'123.456.789,00'f“{num:_.2f}”.replace('.',',').replate('_','.')“{:_.2f}”.format(num).replace('.',',').replace('_','.')

不是你想要的答案吗?浏览标记的其他问题问你自己的问题.