Python 字符串转换数字69


在 Python 中,将字符串转换为数字是一个常见的操作。这可以通过使用内置的函数 int()、float() 和 complex() 实现。

1. int()

int() 函数将字符串转换为整数。如果字符串包含非数字字符,则会引发 ValueError 异常。例如:```python
>>> int('123')
123
>>> int('12.3')
ValueError: invalid literal for int() with base 10: '12.3'
```

int() 函数还支持可选的参数 base,用于指定要转换的进制。默认值为 10(十进制)。例如:```python
>>> int('1010', 2) # 从二进制字符串转换
10
>>> int('FF', 16) # 从十六进制字符串转换
255
```

2. float()

float() 函数将字符串转换为浮点数。它与 int() 函数类似,但接受浮点数作为输入。例如:```python
>>> float('12.34')
12.34
>>> float('1.2e-10') # 科学计数法表示
1.2e-10
```

如果字符串包含非数字字符,float() 函数也会引发 ValueError 异常。

3. complex()

complex() 函数将字符串转换为复数。它接受两个参数:实部和虚部,其中实部是可选的。例如:```python
>>> complex('3+4j')
(3+4j)
>>> complex('12')
(12+0j)
```

如果字符串包含非数字字符或格式错误,complex() 函数也会引发 ValueError 异常。

4. 处理异常

当字符串包含非数字字符或格式错误时,int()、float() 和 complex() 函数都会引发 ValueError 异常。可以捕获这些异常并对无效的字符串做出适当的处理。例如:```python
try:
number = int('abc') # 无效的字符串
except ValueError:
print("无效的数字字符串")
```

5. 字符串格式化

在某些情况下,可能需要将数字格式化为字符串。这可以使用字符串格式化操作符 % 和 format() 函数实现。例如:```python
>>> "%d" % 123
'123'
>>> "{:.2f}".format(12.345)
'12.35'
```

字符串格式化操作符和 format() 函数提供了控制数字格式化的灵活选项。

Python 提供了 int()、float() 和 complex() 函数来方便地将字符串转换为数字。这些函数支持不同的进制和数字格式。通过了解如何使用这些函数和处理异常,程序员可以有效地在 Python 中管理字符串和数字之间的转换。

2024-10-21


上一篇:Python 中有效保存数据到 TXT 文件的指南

下一篇:Python 函数与类:深入理解面向对象编程