# 常用的数据类型转换
| 类型转换操作 | 说明 |
| --- | --- |
| int(x \[,base \]) | 将x转换为一个整数 |
| float(x ) | 将x转换为一个浮点数 |
| complex(real \[,imag \]) | 创建一个复数,real为实部,imag为虚部 |
| str(x ) | 将对象 x 转换为字符串 |
| repr(x ) | 将对象 x 转换为表达式字符串 |
| eval(str ) | 将字符串转成原始数据类型 |
| tuple(s ) | 将序列 s 转换为一个元组 |
| list(s ) | 将序列 s 转换为一个列表 |
| chr(x ) | 将一个整数转换为一个字符 |
| ord(x ) | 将一个字符转换为它的ASCII整数值 |
| hex(x ) | 将一个整数转换为一个十六进制字符串 |
| oct(x ) | 将一个整数转换为一个八进制字符串 |
| bin(x ) | 将一个整数转换为一个二进制字符串 |
## 举例
~~~
>>> # int(): 将数据转换为 int 类型
...
>>> str1 = "10"
>>> # int() 默认按10进制转换后显示
... num1 = int(str1)
>>>
>>> # int() 处理浮点数,只留下整数部分,舍弃小数部分(并不是四舍五入操作)
... num2 = int(3.74)
>>> print(num2)
3
>>>
>>> """
... num1 = int(str1, 8) # 第二个参数为8,表示按8进制转换后显示,结果为 8
... num1 = int(str1, 16) # # 第二个参数为16,表示按16进制转换后显示,结果为 16
... #01 02 03 04 05 06 07 10
... #01 02 ... 0B 0C 0D 0E 0F 10
... print(num1)
... """
>>>
>>> # float() 将数据转化为浮点数
... str2 = "3.14"
>>> f1 = float(str2)
>>> print(type(f1))
<class 'float'>
>>>
>>> f2 = float(10)
>>> print(f2)
10.0
>>>
>>> # complex() 创建复数: 第一个参数是复数的实部,第二个参数是复数的虚部
... c1 = 10 + 4j
>>> c2 = complex(10, 4)
>>>
>>> print(c1)
(10+4j)
>>> print(c2) # 等同与c1
(10+4j)
>>>
>>> # str() : 转换为 字符串类型
... num1 = 10
>>> f1 = 3.14
>>>
>>> print(type(str(num1)))
<class 'str'>
>>> print(type(str(f1)))
<class 'str'>
>>>
>>> # repr(): 转换为表达式字符串
... num1 = 10
>>> print(type(repr(num1)))
<class 'str'>
>>>
>>>
>>> # eval(): 将字符串形式的数据,转换为原本的类型
... str1 = "3.14"
>>> print(type(eval(str1)))
<class 'float'>
>>>
>>> str2 = "[10, 20, 30]"
>>> l = eval(str2)
>>> print(type(l))
<class 'list'>
>>>
>>>
>>> # chr: 将一个整数转换为对应的 Unicode 字符
... s = chr(1065)
>>> print(s)
Щ
>>>
>>> # ord :将一个字符转换为对应的字符编码数字
... n = ord("A")
>>> print(n)
65
>>>
>>> # bin: 将一个整数转换为二进制
... print(bin(1024)) # 0b 开头表示二进制数
0b10000000000
>>>
>>> # oct:将一个整数转换为八进制
... print(oct(1024)) # 0o 开头表示八进制数
0o2000
>>>
>>> # hex: 将一个整数转换为十六进制
... print(hex(1024)) # 0x 开头表示十六进制
0x400
>>>
~~~
#### 附录:常用字符与ASCII码对照表
![![ASCII码对照表](../Images/ASCII码对照表.jpg)](images/screenshot_1593858338365.png)
- 计算机组成原理和Python基础知识
- 计算机组成原理
- 编程语言和Python
- 开发第一个Python程序
- 注释
- 变量以及类型
- 标识符和关键字
- 输出
- 输入
- 运算符
- 数据类型转换
- 判断语句和循环语句
- 判断语句介绍
- if语句
- 比较、关系运算符
- if...else...语句格式
- if...elif...else语句格式
- if语句的嵌套
- if应用:猜拳游戏
- 循环语句介绍
- while循环
- while循环应用
- while循环的嵌套以及应用
- for循环
- break和continue
- 字符串、列表、元组、字典
- 字符串介绍
- 字符串输出
- 字符串输入
- 下标和切片
- 字符串常见操作
- 列表介绍
- 列表的循环遍历
- 列表的常见操作
- 列表的嵌套
- 元组
- 字典介绍
- 字典的常见操作1
- 字典的常见操作2
- 字典的遍历
- 集合(扩展)
- 公共方法
- 4.函数(一)
- 4.1.函数介绍
- 4.2.函数定义和调用
- 4.3.函数的文档说明
- 4.4.函数参数(一)
- 4.5.函数返回值(一)
- 4.6.函数的嵌套调用
- 4.7.函数应用:打印图形和数学计算
- 5.函数(二)
- 5.1.局部变量
- 5.2.全局变量
- 5.3.多函数程序的基本使用流程
- 5.4.函数返回值(二)
- 5.5.函数参数(二)
- 5.6.拆包、交换变量的值
- 5.7.引用(一)
- 5.8.可变、不可变类型
- 5.9.引用(二)
- 5.10.函数使用注意事项
- 6.强化练习
- 6.1.函数应用:学生管理系统
- 6.2.递归函数
- 6.3. 匿名函数
- 6.4.列表推导式
- 6.5.set、list、tuple
- 6.6.高阶函数: map reduce filter
- 7.文件操作,综合应用
- 7.1.文件操作介绍
- 7.2.文件的读写
- 7.3.应用1:制作文件的备份
- 7.4.文件的相关操作
- 7.5.应用:批量修改文件名
- 7.6.综合应用:学生管理系统(文件版)
- 8.面向对象(上)
- 8.1.认识面向对象编程
- 8.2.类和对象
- 8.3.定义类
- 8.4.创建对象
- 8.5.添加和获取对象的属性
- 8.6.在方法内通过self获取对象属性
- 8.7.魔法方法 - init()
- 8.8.魔法方法 - 有参数的__init__()方法
- 8.9.魔法方法 - str()方法
- 8.10.魔法方法 - del()方法
- 8.11.实操案例 - 烤土豆
- 9.面向对象(中)
- 9.1.实操案例 - 放家具
- 9.2.继承的概念
- 9.3.单继承
- 9.4.多继承
- 9.5.子类重写父类的同名属性和方法
- 9.6.子类调用父类同名属性和方法
- 9.7.多层继承
- 9.8.通过super()来调用父类的方法
- 10.面向对象(下)
- 10.1.私有属性和私有方法
- 10.2.修改私有属性的值
- 10.3.多态
- 10.4.类属性和实例属性
- 10.5.静态方法和类方法
- 11.异常处理与模块初识
- 11.1.异常
- 11.2.捕获异常
- 11.3.异常的传递
- 11.4.抛出自定义的异常
- 11.5.获取异常完整信息的正确姿势
- 11.6.认识模块
- 11.7.开发模块
- 11.8.模块中的__all__(未完成)
- 11.9.python中的包(未完成)
- 12.课后加餐
- 12.1.基础应用 - 进销存管理系统(未完成)
- 12.2.基础应用 - 员工信息管理系统(未完成)
- 12.1.编码规范 - PEP8编码规范(未完成)