昨天
以下是根据练习题整理的参考答案,涵盖了多种实现方式:
基础题
1. 直接输出
```python
print("张三") # 输出名字
```
2. 多参数输出
```python
print("张三", 18, "北京") # 输出:张三 18 北京
```
3. 修改分隔符
```python
print("张三", 18, "北京", sep=",") # 输出:张三,18,北京
```
提高题
4. 格式化输出
```python
# 方法1: f-string
name = "张三"
age = 18
city = "北京"
print(f"我的名字是{name},今年{age}岁,生活在{city}。")
# 方法2: format()
print("我的名字是{},今年{}岁,生活在{}。".format(name, age, city))
```
5. 输出数字计算
```python
# 加法
print(15 + 27) # 输出:42
# 除法保留两位小数
print(round(100/3, 2)) # 输出:33.33
# 或者
print(f"{100/3:.2f}") # 输出:33.33
```
6. 转义字符练习
```python
# 方法1: 使用单引号包裹,内部双引号不需要转义
print('他说:"Python 很有趣!"\n然后开始写代码。')
# 方法2: 使用双引号包裹,内部双引号需要转义
print("他说:\"Python 很有趣!\"\n然后开始写代码。")
```
进阶题
7. 控制结尾符
```python
print("Hello", end=" ") # 以空格结尾,不换行
print("World") # 接着输出World,最终在同一行显示
# 输出:Hello World
```
8. 格式化对齐
```python
# 使用f-string格式化
print(f"{'姓名':<10}{'年龄':<10}{'城市':<10}")
print(f"{'小明':<10}{20:<10}{'北京':<10}")
print(f"{'Alice':<10}{25:<10}{'New York':<10}")
# 使用format方法
print("{:<10}{:<10}{:<10}".format('姓名', '年龄', '城市'))
print("{:<10}{:<10}{:<10}".format('小明', 20, '北京'))
print("{:<10}{:<10}{:<10}".format('Alice', 25, 'New York'))
```
9. 打印特殊图案
```python
# 方法1: 循环打印
for i in range(1, 6):
print('*' * i)
# 方法2: 使用列表推导式
print('\n'.join('*' * i for i in range(1, 6)))
```
综合应用题
10. 打印简单表格
```python
# 格式化输出表格
print(f"{'商品':<10}{'单价':<10}{'数量':<10}{'总价':<10}")
print("-" * 40)
print(f"{'苹果':<10}{5.00:<10.2f}{3:<10}{5.00*3:<10.2f}")
print(f"{'香蕉':<10}{3.50:<10.2f}{2:<10}{3.50*2:<10.2f}")
print(f"{'橙子':<10}{4.00:<10.2f}{5:<10}{4.00*5:<10.2f}")
```
11. 模拟进度条
```python
import time
for progress in [10, 50, 100]:
print(f"\r[{progress}%]", end="") # \r回到行首,end=""不换行
time.sleep(1) # 暂停1秒
print() # 最后换行
```
12. 打印函数信息
```python
def add(a, b):
result = a + b
print(f"函数 add 被调用,参数为 {a} 和 {b},结果为 {result}")
return result
# 调用函数
add(3, 5) # 输出:函数 add 被调用,参数为 3 和 5,结果为 8
```
挑战题
13. 打印彩色文本
```python
# ANSI颜色代码
RED = '\033[91m'
GREEN = '\033[92m'
RESET = '\033[0m' # 重置颜色
print(f"{RED}错误{RESET}")
print(f"{GREEN}成功{RESET}")
```
14. 动态打印时间
```python
import time
for i in range(5): # 打印5次
current_time = time.strftime("%H:%M:%S", time.localtime())
print(f"\r当前时间:{current_time}", end="", flush=True)
time.sleep(1) # 等待1秒
print() # 最后换行
```
15. 打印函数执行过程
```python
def factorial(n, depth=0):
indent = " " * depth # 根据深度缩进
print(f"{indent}factorial({n})被调用")
if n == 0:
print(f"{indent}返回 1")
return 1
else:
result = n * factorial(n-1, depth+1)
print(f"{indent}返回 {result}")
return result
# 测试
print("计算5的阶乘:")
factorial(5)
```
附加说明
1. f-string(Python 3.6+)是最简洁的格式化方法,推荐使用
2. sep参数:控制多个参数之间的分隔符,默认是空格
3. end参数:控制输出结束时的字符,默认是换行符`\n`
4. 转义字符:
- `\n`:换行
- `\t`:制表符
- `\\`:反斜杠
- `\"` 或 `\'`:引号
- `\r`:回车(回到行首)
5. 格式化语法:
- `:<10`:左对齐,宽度10
- `:>10`:右对齐,宽度10
- `:^10`:居中对齐,宽度10
- `:.2f`:保留两位小数
评论于:print()函数编程练习题
昨天
评论于:print()函数基础练习
11天前
评论于:turtle 课堂作业



![表情[yangtuo]-黎明前的茶会](https://www.prida.cc/wp-content/themes/zibll/img/smilies/yangtuo.gif)

