Python3 趣味示例
本教程通过一些简单有趣的示例程序,帮助Python新手快速上手。我们将涵盖字符串处理、字典应用等基础知识,并提供清晰的代码和解释,让你轻松掌握Python编程技巧。
示例一:统计字符频率
这个程序用来统计一段文本中每个字符出现的次数。它会接收你输入的字符串,然后告诉你每个字符出现了多少次。
代码实现
python
# 创建一个空字典,用于存储字符和对应的频率
char_frequency = {}
# 获取用户输入的字符串
input_string = input("请输入一段字符串: ")
# 遍历字符串中的每一个字符
for char in input_string:
# 如果字符已经在字典中,则增加它的计数
if char in char_frequency:
char_frequency[char] += 1
# 否则,将字符添加到字典中,并设置计数为1
else:
char_frequency[char] = 1
# 更简洁的方法: char_frequency[char] = char_frequency.get(char, 0) + 1
# 打印字符频率
print("字符频率统计结果:")
for char, count in char_frequency.items(): # 使用 .items() 可以同时获取键和值
print(f"字符 '{char}' 出现了 {count} 次") # 使用f-string更方便地格式化输出
# 补充:如何忽略大小写进行统计?
# 可以先将字符串转换为小写或大写: input_string = input_string.lower() 或 input_string = input_string.upper()
示例输出
请输入一段字符串: Hello World!
字符频率统计结果:
字符 'H' 出现了 1 次
字符 'e' 出现了 1 次
字符 'l' 出现了 3 次
字符 'o' 出现了 2 次
字符 ' ' 出现了 1 次
字符 'W' 出现了 1 次
字符 'r' 出现了 1 次
字符 'd' 出现了 1 次
字符 '!' 出现了 1 次
代码解释
- 字典
char_frequency
: 用于存储字符和它们出现的次数。字典是一种键值对的数据结构,非常适合用来做统计。 input()
函数: 用于接收用户的输入,并将输入作为字符串返回。for
循环: 遍历字符串中的每个字符。if...else
语句: 检查字符是否已经在字典中。如果在,则增加计数;如果不在,则添加字符到字典并设置计数为 1。char_frequency.items()
: 返回字典中所有键值对的视图,可以方便地遍历字典。f-string
: 一种方便的字符串格式化方法,可以在字符串中直接嵌入变量。
拓展知识
- 字典(Dictionary): 字典是Python中非常重要的数据结构,它允许你通过键(key)来访问值(value)。字典的键必须是唯一的,而值可以重复。
get()
方法:char_frequency.get(char, 0)
尝试获取字典中键为char
的值。如果键不存在,则返回默认值 0,避免了KeyError错误。- 字符串方法
lower()
和upper()
: 分别用于将字符串转换为小写和大写。
示例二:简易工资管理
这个程序可以让你输入员工的姓名和工资,并将它们存储在一个字典中。最后,程序会打印出所有员工的姓名和工资。
代码实现
python
# 获取员工人数
num_employees = int(input("请输入员工总人数: "))
# 创建一个空字典,用于存储员工姓名和工资
employee_salaries = {}
# 循环输入每个员工的姓名和工资
for i in range(num_employees):
employee_name = input(f"请输入第 {i+1} 位员工的姓名: ")
employee_salary = int(input(f"请输入 {employee_name} 的工资: "))
employee_salaries[employee_name] = employee_salary
# 打印员工姓名和工资
print("\n员工工资信息:") # \n表示换行,使输出更清晰
for name, salary in employee_salaries.items():
print(f"员工 {name} 的工资是: {salary}")
示例输出
请输入员工总人数: 2
请输入第 1 位员工的姓名: 张三
请输入 张三 的工资: 5000
请输入第 2 位员工的姓名: 李四
请输入 李四 的工资: 6000
员工工资信息:
员工 张三 的工资是: 5000
员工 李四 的工资是: 6000
代码解释
employee_salaries
字典: 用于存储员工姓名和对应的工资。range(num_employees)
: 生成一个从 0 到num_employees-1
的整数序列,用于循环输入员工信息。f-string
: 用于在输入提示信息中显示员工的序号和姓名,使交互更友好。
拓展知识
- 字典的应用场景: 字典非常适合用于存储和检索具有唯一标识符的数据,例如员工信息、学生信息、产品信息等。
- 错误处理: 在实际应用中,你应该考虑错误处理,例如,如果用户输入的工资不是数字,程序应该给出提示并要求重新输入。 可以使用
try...except
块来捕获ValueError
异常。