Select Language

AI社区

AI技术百科

2.5、Python整数和字符串的相互转换

在某些情况下,我们得到的类型不是整数,但是我们知道其表示的是整数含义,所以我们希望能够将其转换成整数,然后进行相关操作。

例如,假定需要从用户输入得到语文课测验的成绩,计算其最高分、最低分和平均分。而从用户键盘得到的就是字符串,但我们知道其表示的是整数的含义,因此进行统计处理时就需要将其转换成整数。

1. 字符串转换成整数

可以使用 int() 来从字符串得到一个整数。

>>> a = int("1000")   # 输入是字符串    
>>> type(a)           # 检查类型
<class 'int'>         # 类型是整型
>>> a                 # 查看结果的值
1000


如果字符串的格式不对,如输入字符串是“100.abc”,这时就会抛出异常,需要进行特别处理。

>>> a = int("1000.8766")               # 输入的字符串非法    
Traceback (most recent call last):     # 抛出异常
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '1000.8766'
>>> a = int("a1000")                   # 输入的字符串非法
Traceback (most recent call last):     # 抛出异常
  File "<stdin>", line 1, in <module>
ValueError: invalid literal for int() with base 10: 'a1000'


如果输入的字符串不是十进制的格式,而是八进制,可以执行进制转换,用法如下:

>>> a = int("20", 8)   # 八进制表示的数20
>>> a                  # 查看结果的值
16                     # 在十进制中为16
>>> int("1111", 2)     # 二进制表示的数1111
15                     # 在十进制中为15

2. 整数转换成字符串

可以使用 str() 来得到字符串结果。

>>> a = str(12)   # 输入是整数
>>> type(a)       # 查看a的类型
<class 'str'>     # 输出a是字符串
>>> a             # 查看a的值
'12'              # 注意''表示是字符串

3. 浮点数转换成整数

也可以使用 int() 来从浮点数得到一个整数。

>>> int(12.0)   # 输入是浮点数
12              # 得到的是去掉小数部分的值
>>> int(12.9)   # 输入是浮点数
12              # 没有四舍五入


我要发帖
  • 26

    条内容
Python基本数据类型一共26个章节
本章将介绍 Python 内置的基本数据类型,包括整型、浮点数、字符串、布尔型、列表、元组、集合和字典等 Python 定义的基本数据类型,以及这些数据类型的运算操作。
我们知道,Python 是强类型语言,每个变量在某个时刻的类型是确定的。也就是说,Python 中任意一个存活的对象,其类型是唯一的。不同类型的对象有不同的属性,能完成不同的操作。
另外本章最后还会介绍变量、对象等概念。每个对象都有一个确定的类型,每个变量都指向某个特定的对象。