Skip to content

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 次

代码解释

  1. 字典 char_frequency: 用于存储字符和它们出现的次数。字典是一种键值对的数据结构,非常适合用来做统计。
  2. input() 函数: 用于接收用户的输入,并将输入作为字符串返回。
  3. for 循环: 遍历字符串中的每个字符。
  4. if...else 语句: 检查字符是否已经在字典中。如果在,则增加计数;如果不在,则添加字符到字典并设置计数为 1。
  5. char_frequency.items(): 返回字典中所有键值对的视图,可以方便地遍历字典。
  6. 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

代码解释

  1. employee_salaries 字典: 用于存储员工姓名和对应的工资。
  2. range(num_employees): 生成一个从 0 到 num_employees-1 的整数序列,用于循环输入员工信息。
  3. f-string: 用于在输入提示信息中显示员工的序号和姓名,使交互更友好。

拓展知识

  • 字典的应用场景: 字典非常适合用于存储和检索具有唯一标识符的数据,例如员工信息、学生信息、产品信息等。
  • 错误处理: 在实际应用中,你应该考虑错误处理,例如,如果用户输入的工资不是数字,程序应该给出提示并要求重新输入。 可以使用 try...except 块来捕获 ValueError 异常。