print格式化显示

在 Python 中,`print` 函数可以使用多种格式化方法来输出字符串。以下是几种常见的格式化方法及其用法:

### 1. 使用 `%` 操作符

这种方法是 Python 中较早的格式化字符串的方法,使用 `%` 操作符。

```python
name = "Alice"
age = 30
print("My name is %s and I am %d years old." % (name, age))
```

### 2. 使用 `str.format()`

`str.format()` 方法提供了更强大的格式化功能。

```python
name = "Alice"
age = 30
print("My name is {} and I am {} years old.".format(name, age))
```

你还可以使用位置参数和关键字参数:

```python
print("My name is {0} and I am {1} years old.".format(name, age))
print("My name is {name} and I am {age} years old.".format(name=name, age=age))
```

### 3. 使用 f-字符串(Python 3.6+)

f-字符串是 Python 3.6 引入的一种格式化字符串的方法,语法简洁且易于阅读。

```python
name = "Alice"
age = 30
print(f"My name is {name} and I am {age} years old.")
```

### 4. 使用格式化选项

无论是使用 `str.format()` 还是 f-字符串,你都可以指定格式选项,例如数字的格式、对齐方式、填充字符等。

#### 4.1 数字格式化

```python
pi = 3.14159
print("Pi is approximately {:.2f}".format(pi)) # 保留两位小数
print(f"Pi is approximately {pi:.2f}") # 使用 f-字符串
```

#### 4.2 对齐和填充

```python
# 使用 str.format()
print("{:<10} | {:>10}".format("left", "right")) # 左对齐和右对齐
print("{:0<10}".format(5)) # 用 0 填充到 10 位

# 使用 f-字符串
print(f"{'left':<10} | {'right':>10}")
print(f"{5:0<10}")
```

### 5. 使用 `print` 的 `sep` 和 `end` 参数

`print` 函数还有两个重要的参数:`sep` 和 `end`。

- `sep`:指定多个参数之间的分隔符。
- `end`:指定输出结束后的字符,默认是换行符 `\n`。

```python
print("Hello", "World", sep=", ") # 输出: Hello, World
print("Hello", end=" ") # 输出: Hello (不换行)
print("World") # 输出: World (在同一行)
```

### 6. 综合示例

以下是一个综合示例,展示了多种格式化方法的结合使用:

```python
name = "Alice"
age = 30
height = 1.75

# 使用 f-字符串
print(f"Name: {name}, Age: {age}, Height: {height:.2f}m")

# 使用 str.format()
print("Name: {}, Age: {}, Height: {:.2f}m".format(name, age, height))

# 使用 % 操作符
print("Name: %s, Age: %d, Height: %.2fm" % (name, age, height))
```

### 总结

- Python 提供了多种格式化字符串的方法,包括 `%` 操作符、`str.format()` 方法和 f-字符串。
- 你可以使用格式选项来控制输出的格式,例如对齐、填充和数字格式。
- `print` 函数的 `sep` 和 `end` 参数可以帮助你定制输出的格式。

posted @ 2024-09-04 18:08  ReluStarry  阅读(10)  评论(0编辑  收藏  举报