Python编程常用的36个经典案例

Python 的简洁和强大使其成为许多开发者的首选语言。本文将介绍36个常用的Python经典代码案例。这些示例覆盖了基础语法、常见任务、以及一些高级功能。

1. 列表推导式

fizz_buzz_list = [       "FizzBuzz" if i % 15 == 0 else "Fizz" if i % 3 == 0 else "Buzz" if i % 5 == 0 else i for i in range(1, 101)   ]   print(fizz_buzz_list)   

这个例子展示了列表推导式,用于生成FizzBuzz序列。

2. 使用with语句和csv模块读取CSV文件

import csv      with open('data.csv', mode='r') as file:       csvFile = csv.reader(file)       for row in csvFile:           print(row)   

csv模块是处理CSV文件的利器,与with语句结合可以确保文件正确关闭。

3. 正则表达式查找字符串

import re      pattern = r'\b[A-Za-z][A-Za-z0-9_]*\b'   text = "Hello, this is a test string with username: JohnDoe"   matches = re.findall(pattern, text)   print(matches)   

正则表达式是强大的文本匹配工具,这里用来找出字符串中的所有单词。

4. 计算字符串中某个字符的数量

text = "Hello, World!"   char = "l"   count = text.count(char)   print(f"The character '{char}' appears {count} times.")   

count() 方法可以快速统计子串在字符串中的出现次数。

5. 使用set进行去重

duplicates = [1, 2, 2, 3, 4, 4, 5]   unique_list = list(set(duplicates))   print(unique_list)   

集合(set)是一个无序不重复的元素集,非常适合去重。

6. 使用format()格式化字符串

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

format() 方法使字符串格式化更加灵活和清晰。

7. 实现一个简单的缓存装饰器

def cache(func):       cache_dict = {}       def wrapper(num):           if num in cache_dict:               return cache_dict[num]           else:               val = func(num)               cache_dict[num] = val               return val       return wrapper   @cache   def fibonacci(n):       if n < 2:           return n       return fibonacci(n-1) + fibonacci(n-2)   print(fibonacci(10))   

装饰器可以用来缓存函数的结果,提高性能。

8. 使用try-except-else-finally处理异常

try:       result = 10 / 0   except ZeroDivisionError:       print("Cannot divide by zero")   else:       print("Result is:", result)   finally:       print("Execution complete.")   

完整的异常处理流程可以让我们更好地控制程序执行。

9. 断言(assertion)的使用

def divide(a, b):       assert b != 0, "Division by zero is not allowed"       return a / b   print(divide(10, 0))   

断言可以帮助我们在开发阶段捕捉到错误条件。

10. 路径操作

import os      path = "/path/to/some/file.txt"   dirname = os.path.dirname(path)   basename = os.path.basename(path)   print("Directory:", dirname)   print("Basename:", basename)   

os.path 模块提供了许多实用的路径操作函数。

11. 环境变量的读取和设置

import os      # 读取环境变量   print("PATH:", os.environ["PATH"])   # 设置环境变量   os.environ["NEW_VAR"] = "NewValue"   print("NEW_VAR:", os.environ["NEW_VAR"])   

os.environ 允许我们访问和修改环境变量。

12. 使用itertools模块

import itertools      for combination in itertools.combinations([1, 2, 3], 2):       print(combination)   

itertools 模块提供了一系列用于创建迭代器的函数,非常有用。

13. 日期时间计算和操作

from datetime import datetime, timedelta      now = datetime.utcnow()   one_day = timedelta(days=1)   yesterday = now - one_day   print("Yesterday's date:", yesterday)   

日期时间计算是常见的需求,datetime 模块提供了丰富的类和方法。

14. 排序和反序列表

numbers = [3, 1, 4, 1, 5, 9, 2, 6]   numbers.sort()   print("Sorted:", numbers)   numbers.reverse()   print("Reversed:", numbers)   

列表对象自带的 sort()reverse() 方法可以方便地对列表进行排序和反序。

15. 使用json模块处理JSON数据

import json      data = {"name": "John", "age": 30}   json_data = json.dumps(data)   print(json_data)   parsed_data = json.loads(json_data)   print(parsed_data)   

json模块使得Python处理JSON数据变得简单。

16. 使用collections模块的defaultdict

from collections import defaultdict      dd = defaultdict(int)   dd["apple"] = 1   dd["banana"] = 2   print(dd["apple"])  # 输出:1   print(dd["orange"])  # 输出: 0,不存在的键返回默认值0   

defaultdict 是字典的一个子类,它提供了一个默认值,用于字典中尝试访问不存在的键。

17. 使用functools模块的reduce函数

from functools import reduce   from operator import add   numbers = [1, 2, 3, 4]   total = reduce(add, numbers)   print(total)  # 输出:10   

reduce 函数可以将一个二元函数累积地应用到一个序列的元素上,从左到右,以便将序列减少为单个值。

18. 使用threading模块进行简单的多线程编程

import threading      def print_numbers():       for i in range(10):           print(i)   thread = threading.Thread(target=print_numbers)   thread.start()   thread.join()   

threading模块允许我们创建和管理线程,这是实现并发的一种方式。

19. 使用multiprocessing模块进行多进程编程

from multiprocessing import Process, cpu_count      def print_hello():       print("Hello from child process")   if __name__ == '__main__':       processes = []       for _ in range(cpu_count()):           p = Process(target=print_hello)           p.start()           processes.append(p)       for p in processes:           p.join()   

multiprocessing模块是Python中进行进程编程的关键模块。

20. 使用requests模块进行HTTP请求

import requests      response = requests.get("https://www.example.com")   print(response.status_code)   print(response.text)   

requests模块简化了HTTP请求的相关操作,是进行网络编程的好帮手。

21. 使用map()函数将字符串转换为整数列表

string_numbers = "1 2 3 4 5"   numbers = list(map(int, string_numbers.split()))   print(numbers)   

map() 函数可以对一个序列的每个元素应用指定的函数。

22. 条件语句

x = 7   if x > 5:       print("x is greater than 5")   else:       print("x is less than or equal to 5")   

条件语句是控制程序流程的基本构建块。

23. for循环遍历列表

fruits = ["apple", "banana", "cherry"]   for fruit in fruits:       print(fruit)   

for 循环在Python中是常用的迭代工具。

24. while循环

count = 0   while count < 5:       print(count)       count += 1   

while 循环允许程序按条件重复执行代码。

25. 使用enumerate()获取列表的索引和值

for index, value in enumerate(["apple", "banana", "cherry"]):       print(index, value)   

enumerate() 函数可以同时获得元素的索引和值,使代码更简洁。

26. 列表切片

fruits = ["apple", "banana", "cherry", "date", "elderberry"]   print(fruits[1:4])   

列表切片是访问列表子集的一种快捷方式。

27. 字符串格式化

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

字符串格式化是Python中处理字符串的重要方法。

28. 异常处理

try:       result = 10 / 0   except ZeroDivisionError:       print("Cannot divide by zero")   

异常处理可以帮助我们捕获和处理错误。

29. 类定义

class Person:       def __init__(self, name, age):           self.name = name           self.age = age       def greet(self):           print(f"Hello, my name is {self.name} and I am {self.age} years old.")   

类的使用是面向对象编程的核心。

30. 集合并集

fruits_set = {"apple", "banana", "cherry"}   veggies_set = {"carrot", "broccoli", "banana"}   print(fruits_set | veggies_set)   

集合操作可以方便地处理一组唯一的元素。

31. 创建字典

person_dict = {"name": "John", "age": 30, "city": "New York"}   print(person_dict)   

字典是存储键值对的数据结构。

32. 访问字典值

person_dict = {"name": "John", "age": 30, "city": "New York"}   print(person_dict["name"])   

通过键来访问字典中的值。

33. 删除字典元素

person_dict = {"name": "John", "age": 30, "city": "New York"}   del person_dict["age"]   print(person_dict)   

在字典中删除元素同样容易。

34. 生成器函数

def countdown(n):       while n > 0:           yield n           n -= 1   for i in countdown(5):       print(i)   

生成器可以创建迭代器,按需产生值。

35. 使用zip()同时遍历多个列表

names = ["Alice", "Bob", "Charlie"]   ages = [25, 30, 35]   for name, age in zip(names, ages):       print(name, age)   

使用 zip() 可以方便地并行迭代多个序列。

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《Python 核心编程》是一本介绍 Python 语言的经典教材,由 Wesley Chun 和 Jeffery E. Friedl 共同编写。本书涵盖了从基础语法到高级主题的广泛知识,包括循环、函数、模块、面向对象编程等内容。 此外,该书还介绍了使用 Python 解决实际问题的方法,例如文件处理、网络编程、数据库连接、GUI 编程等。书中使用了许多实例,通过实例来讲解概念和使用方法,使读者能更好地理解 Python 编程的基本思想和实践技巧。 总的来说,《Python 核心编程》是一本适合 Python 初学者和有一定经验的程序员的参考书籍。读者可以根据自己的需要选择适当的章节进行阅读,也可以作为工具书在实际编程中使用。此外,本书还附有 Python 编译器,读者可以通过编写代码来练习书中的知识点。如果你想学习 Python,那么《Python 核心编程》绝对是一本值得推荐的好书。 ### 回答2: Python核心编程指的是一本以Python编程语言为主题的编程书籍。该书的作者为Wesley Chun,是一本经典Python编程指南,以深入浅出、通俗易懂的方式介绍了Python语法、常用模块以及实际应用等方面的知识。 Python是一门跨平台高级编程语言,具有易读易写、开发效率高、支持面向对象编程等优点,因此在科学计算、数据处理、网络爬虫、人工智能、机器学习等领域都得到了广泛的应用。 Python核心编程通过优美的代码示例和实用的工具让读者快速掌握Python语法,同时详细介绍了List、Tuple、Dictionary、Set等常用数据结构以及条件语句、循环语句等Python编程基础知识。在程序设计和编码过程中,读者还可以学习如何使用面向对象编程(OOP)的方式来设计解决实际问题的程序。此外,该书还特别介绍了常用的模块和库,包括网络编程、多线程、数据库访问等方面的内容,帮助读者丰富和拓展Python的应用领域。 总的来说,Python核心编程是一本通俗易懂、具有实用价值和实用性的Python编程指南,是Python程序员必备的参考书。对于初学者和中级开发者来说,这本书是很好的“翻译书”,能够帮助他们更好地理解Python编程的概念和应用。对于高级程序员而言,该书更像是一本手册,用于解决一些高级编程难题和实际应用问题。 ### 回答3: Python核心编程是一本极具权威性和实用性的Python编程入门教材。该教材结合了Python的主要语言特征和使用技巧,并通过海量的实例、案例、范例,帮助读者快速入门Python编程,开发Python应用程序。 该教材的目录由浅入深,从Python语言基础概念入手,逐步深入讲解Python数据类型、控制结构、函数、模块、面向对象编程等方面的知识。同时,该教材还具有较为深入的章节讲解,如Python正则表达式、多线程编程、GUI编程等专项技能。 在Python核心编程中,读者还可以学习到如何使用Python编写各种类型的程序,例如网络编程、Web编程、数据库编程、操作系统编程等等。另外,该教材还介绍了大量的Python概念,如递归、异常处理、装饰器、迭代器、生成器等等,这些概念都是Python开发过程中所必须掌握的,对Python编程的提升具有极大的帮助。 总而言之,Python核心编程的核心价值在于为读者提供了全面的Python编程指南,把Python编程的方法和技巧讲解得深入浅出,易于理解。如果你想学习Python编程或提高Python编程技能,这是一个非常好的参考资料。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值