Python 基础

1.7 数据类型转换

2023-02-21  本文已影响0人  拖延症患者10
类型转换操作 说明
int(x [,base ]) 将x转换为一个整数
float(x ) 将x转换为一个浮点数
complex(real [,imag ]) 创建一个复数,real为实部,imag为虚部
str(x ) 将对象 x 转换为字符串
eval(str ) 将字符串转成原始数据类型
tuple(s ) 将序列 s 转换为一个元组
list(s ) 将序列 s 转换为一个列表
chr(x ) 将一个整数转换为一个字符
ord(x ) 将一个字符转换为它的ASCII整数值
hex(x ) 将一个整数转换为一个十六进制字符串
oct(x ) 将一个整数转换为一个八进制字符串
bin(x ) 将一个整数转换为一个二进制字符串

定义两个变量

my_str = "5"
num1 = 3
  • int类型转换成str类型
num_str = str(num1)
print(num_str, type(num_str))

输出结果:

3 <class 'str'>

  • 两个str类型相加完成的是字符串的拼接
result = my_str + num_str
print(result, type(result))

输出结果:

53 <class 'str'>

  • str类型的数据转换成int类型的数据
num2 = int(my_str)
print(num2, type(num2))
result = num1 + num2
print(result, type(result))

输出结果:

5 <class 'int'>
8 <class 'int'>

  • 把字符串转换成float类型
my_str2 = "3.15"
num3 = float(my_str2)
print(num3, type(num3))

输出结果:

3.15 <class 'float'>

  • 整数转换成float类型
num4 = 5
num5 = float(num4)
print(num5, type(num5))

输出结果:

5.0 <class 'float'>

  • float类型转换成int类型,提示:转成int类型只取整数部分
num6 = 3.54
num7 = int(num6)
print(num7, type(num7))

输出结果:

3 <class 'int'>

  • eval()函数:提取字符串里面的内容
my_str = "'abc'"
data = eval(my_str)
print(data, type(data))

输出结果:

abc <class 'str'>

  • 注意:my_str = "abc"使用eval()函数提取出来的是abc,相当于一个变量,不能进行操作,会报错!
my_str = "abc"
data = eval(my_str)
print(data, type(data))

输出结果:

Traceback (most recent call last):
File "C:\Users\User\PycharmProjects\pythonProject\03-数据类型.py", line 37, in <module>
data = eval(my_str)
File "<string>", line 1, in <module>
NameError: name 'abc' is not defined

  • ord()函数:把一个字符转成数字。只因计算机智能识别二进制数字,则需要用到ord()函数。
result = ord("哈")
print(result)

输出结果:

21704

  • chr()函数:把一个数字转成一个字符
result = chr(97)
print(result)

输出结果:

a

上一篇 下一篇

猜你喜欢

热点阅读