首页 > 编程语言 >Python中如何将字符串变成数字?

Python中如何将字符串变成数字?

时间:2023-10-19 12:02:46浏览次数:31  
标签:123 数字 Python print num str 字符串

  字符串和数字是Python中常见的数据类型,而且在撰写Python程序的时候,也经常会遇到需要将字符串转换为数字的情况,那么Python中如何将字符串变成数字?有多种方法可以使用,接下来一起来看看具体内容介绍。

  1、使用int()函数

  int()函数可以将字符串转换为整数类型。例如,将字符串"123"转换为整数类型的代码如下:

  ```

  str_num = "123"

  num = int(str_num)

  print(num)

  ```

  运行结果为:

  ```

  123

  ```

  需要注意的是,如果字符串中包含非数字字符,则会抛出ValueError异常。例如,将字符串"123abc"转换为整数类型的代码如下:

  ```

  str_num = "123abc"

  num = int(str_num)

  print(num)

  ```

  运行结果为:

  ```

  ValueError: invalid literal for int() with base 10: '123abc'

  ```

  2、使用float()函数

  float()函数可以将字符串转换为浮点数类型。例如,将字符串"3.14"转换为浮点数类型的代码如下:

  ```

  str_num = "3.14"

  num = float(str_num)

  print(num)

  ```

  运行结果为:

  ```

  3.14

  ```

  需要注意的是,如果字符串中包含非数字字符,则会抛出ValueError异常。例如,将字符串"3.14abc"转换为浮点数类型的代码如下:

  ```

  str_num = "3.14abc"

  num = float(str_num)

  print(num)

  ```

  运行结果为:

  ```

  ValueError: could not convert string to float: '3.14abc'

  ```

  3、使用eval()函数

  eval()函数可以将字符串转换为Python表达式并求值。如果字符串表示一个数字,eval()函数会将其转换为数字类型。例如,字符串"123"转换为数字类型的代码如下:

  ```

  str_num = "123"

  num = eval(str_num)

  print(num)

  ```

  运行结果为:

  ```

  123

  ```

  需要注意的是,如果字符串中包含非数字字符,则会抛出SyntaxError异常。例如,将字符串"123abc"转换为数字类型的代码如下:

  ```

  str_num = "123abc"

  num = eval(str_num)

  print(num)

  ```

  运行结果为:

  ```

  SyntaxError: invalid syntax

  ```

  4、使用isdigit()函数

  isdigit()函数可以检查字符串中是否只包含数字字符。如果是,返回True;否则返回False。例如,判断字符串"123"是否是数字的代码如下:

  ```

  str_num = "123"

  if str_num.isdigit():

  print("是数字")

  else:

  print("不是数字")

  ```

  运行结果为:

  ```

  是数字

  ```

  需要注意的是,如果字符串中包含非数字字符,则返回False。例如,判断字符串"123abc"是否是数字的代码如下:

  ```

  str_num = "123abc"

  if str_num.isdigit():

  print("是数字")

  else:

  print("不是数字")

  ```

  运行结果为:

  ```

  不是数字

  ```

  5、使用正则表达式提取字符串中的数字

  正则表达式可以用来匹配特定的字符串格式。可以使用正则表达式提取字符串中的数字。例如,从字符串"abc123def456"中提取数字的代码如下:

  ```

  import re

  str_num = "abc123def456"

  pattern = re.compile(r'\d+')

  nums = pattern.findall(str_num)

  print(nums)

  ```

  运行结果为:

  ```

  ['123', '456']

  ```

  需要注意的是,正则表达式中的"\d"表示数字字符,而"+"表示匹配至少一个数字字符。如果要匹配浮点数,则可以使用"\d+\.\d+"作为正则表达式。

标签:123,数字,Python,print,num,str,字符串
From: https://blog.51cto.com/u_14661964/7934157

相关文章

  • python脚本中应用多线程和多进程理解
    脚本内容因为要读取mongo某个全表数据(亿级别),有个字段有索引且是一堆多的关系从其他表读取所有这个字段(十万级别),再读取大表因为数据量大所以写个测试,从中拿出几条去大表查询(每次读到十万级别数据)多线程和多进程的影响不使用多线/进程file=open('test2.csv','w')content......
  • python写爆破字典
    #coding:utf-8withopen('username.txt','wb')asf:foriinrange(00000,99999):line=str('w'+'%05d'%i)+'\n'f.write(line)f.close()    ......
  • C# 中的字符串内插 $对比string.Format
    原文:https://blog.csdn.net/HeBizhi1997/article/details/123544524C#10.0对字符串插值做了点提升,支持开发人员对字符串进行花式内插。附官方教程:https://docs.microsoft.com/zh-cn/dotnet/csharp/tutorials/string-interpolation#code-try-0icon-default.png?t=M2......
  • python01
    #==============================#单行注释以警号开始#注释一般是用在有意义的代码上,helloworld大家都看得懂,没必要注释"""  多行注释内容,三个双引号或者单引号都可以  '''多行注释内容'''"""print("HelloWorld!")#==============================#......
  • 21.python异常处理和断言
    python异常处理和断言目录python异常处理和断言异常捕获流程案例触发异常异常类型异常处理的优点断言函数assert异常捕获流程捕捉异常可以使用try/except语句。try/except语句用来检测try语句块中的错误,从而让except语句捕获异常信息并处理。try: <语句>#运行别的......
  • Python入门进阶:68 个 Python 内置函数详解
    内置函数就是Python给你提供的,拿来直接用的函数,比如print.,input等。截止到python版本3.6.2,python一共提供了68个内置函数,具体如下abs()dict()help()min()setattr()all()dir()hex()next()slice()any()divmod()id()object()sorted()ascii()enumerate()input()......
  • Python 快速入门
    Python快速入门更好的阅读体验?0.前景知识......
  • 基于Python的《计算机组成原理》在线学习平台-计算机毕业设计源码+LW文档
    摘 要 随着互联网的发展,通过计算机来学习是当前非常流行的一种学习方式。通过课程虽然可以面对面的进行交流和学习,但是很多时候因为地区和空间的限制会受到很多的影响但是通过网络来进行学习可以打破这一局限性,为此我开发了本基于Python的《计算机组成原理》在线学习平台网站......
  • 基于python的旅游网站-计算机毕业设计源码+LW文档
    摘 要 随着时代的发展,人们对旅游也越来越重视,近些年来我国的旅游产业也发生了翻天覆地的变化,但是很多人在出去旅游的时候不知道去哪里旅游,在预订酒店和机票的时候也没有一个综合性的旅游网站,为了让人们的旅游变的更加的方便,为此我开发了本基于python的旅游网站本基于python的......
  • 力扣每日一题+python知识点回顾
    力扣题目:执行K次操作后的最大分数(题号:2530)给你一个下标从0开始的整数数组nums和一个整数k。你的起始分数为0。在一步操作中:选出一个满足0<=i<nums.length的下标i,将你的分数增加nums[i],并且将nums[i]替换为ceil(nums[i]/3)。返回在恰好执......