Python类型转换,数据类型转换函数大全
虽然 Python 是弱类型编程语言,不需要像 Java 或 C 语言那样还要在使用变量前声明变量的类型,但在一些特定场景中,仍然需要用到类型转换。
比如说,我们想通过使用 print() 函数输出信息“您的身高:”以及浮点类型 height 的值,如果在交互式解释器中执行如下代码:
>>> height = 70.0 >>> print("您的身高"+height) Traceback (most recent call last): File "<pyshell#1>", line 1, in <module> print("您的身高"+height) TypeError: must be str, not float
会发现这是错误的,解释器提示我们字符串和浮点类型变量不能直接相连,需要提前将浮点类型变量 height 转换为字符串才可以。
庆幸的是,Python 已经为我们提供了多种可实现数据类型转换的函数,如图所示。
函 数 | 作 用 |
---|---|
int(x) | 将 x 转换成整数类型 |
Iloat(x) | 将 x 转换成浮点数类型 |
complex(real,[,imag]) | 创建一个复数 |
str(x) | 将 x 转换为字符串 |
repr(x) | 将 x 转换为表达式字符串 |
eval(str) | 计算在字符串中的有效 Python 表达式,并返回一个对象 |
chr(x) | 将整数 x 转换为一个字符 |
ord(x) | 将一个字符 x 转换为它对应的整数值 |
hex(x) | 将一个整数 x 转换为一个十六进制字符串 |
oct(x) | 将一个整数 x 转换为一个八进制的字符串 |
需要注意的是,在使用类型转换函数时,提供给它的数据必须是有意义的。例如,int() 函数无法将一个非数字字符串转换成整数:
>>> int("123") #转换成功 123 >>> int("123个") #转换失败 Traceback (most recent call last): File "<pyshell#3>", line 1, in <module> int("123个") ValueError: invalid literal for int() with base 10: '123个' >>>
python strip()函数介绍
描述
Python strip() 方法用于移除字符串头尾指定的字符(默认为空格)。
语法
strip()方法语法:
str.strip([chars]);
参数
chars -- 移除字符串头尾指定的字符。
返回值
返回移除字符串头尾指定的字符生成的新字符串。
实例
以下实例展示了strip()函数的使用方法:
#!/usr/bin/python # -*- coding: UTF-8 -*- ?? str = "0000000?? jb51.net 0000000" print(str.strip( '0' )) # 去除首尾字符 0 ?? str2 = "? jb51.net?? "? # 去除首尾空格 print(str2.strip())
以上实例输出结果如下:
jb51.net jb51.netPython3 replace()方法
描述
replace() 方法把字符串中的 old(旧字符串) 替换成 new(新字符串),如果指定第三个参数max,则替换不超过 max 次。
语法
replace()方法语法:
str.replace(old, new[, max])
参数
old -- 将被替换的子字符串。
new -- 新字符串,用于替换old子字符串。
max -- 可选字符串, 替换不超过 max 次
返回值
返回字符串中的 old(旧字符串) 替换成 new(新字符串)后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次