当然,以下是一些用Python编写的经典例子,涵盖了从基础到稍微高级一些的概念。
1. 斐波那契数列
斐波那契数列是一个每一项都是前两项之和的数列,从0和1开始。
def fibonacci(n):
fib_sequence = [0, 1]
while len(fib_sequence) < n:
fib_sequence.append(fib_sequence[-1] + fib_sequence[-2])
return fib_sequence[:n]
# 输出前10个斐波那契数
print(fibonacci(10))
2. 冒泡排序
冒泡排序是一种简单的排序算法,通过重复遍历要排序的列表,比较相邻元素并交换它们的位置来排序。
def bubble_sort(arr):
n = len(arr)
for i in range(n):
for j in range(0, n-i-1):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr
# 测试冒泡排序
arr = [64, 34, 25, 12, 22, 11, 90]
print("排序前:", arr)
print("排序后:", bubble_sort(arr))
3. 高阶函数:map 和 filter
map
函数用于将一个函数应用于一个可迭代对象的所有元素,filter
函数用于过滤掉不符合条件的元素。
# 使用 map 函数将字符串列表转换为大写
strings = ["hello", "world", "python"]
upper_strings = list(map(str.upper, strings))
print("大写字符串:", upper_strings)
# 使用 filter 函数过滤掉偶数
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
odd_numbers = list(filter(lambda x: x % 2 != 0, numbers))
print("奇数:", odd_numbers)
4. 装饰器
装饰器是Python中的一个高级功能,用于在不修改原有函数代码的前提下,给函数添加额外的功能。
def my_decorator(func):
def wrapper():
print("Something is happening before the function is called.")
func()
print("Something is happening after the function is called.")
return wrapper
@my_decorator
def say_hello():
print("Hello!")
# 测试装饰器
say_hello()
5. 生成器
生成器是一种特殊的迭代器,使用 yield
关键字可以一次返回一个值,而不是一次性返回所有值,从而节省内存。
def infinite_sequence():
num = 0
while True:
yield num
num += 1
# 创建一个生成器对象
gen = infinite_sequence()
# 打印前5个值
for _ in range(5):
print(next(gen))
6. 读取和写入文件
文件操作是编程中的常见任务,Python提供了内置的文件处理功能。
# 写入文件
with open('example.txt', 'w') as file:
file.write("Hello, World!\n")
file.write("This is a test.\n")
# 读取文件
with open('example.txt', 'r') as file:
content = file.read()
print(content)
7. 简单的Web服务器
Python的http.server
模块可以用来快速搭建一个简单的HTTP服务器。
from http.server import SimpleHTTPRequestHandler, HTTPServer
def run(server_class=HTTPServer, handler_class=SimpleHTTPRequestHandler, port=8000):
server_address = ('', port)
httpd = server_class(server_address, handler_class)
print(f"Starting httpd server on port {port}")
httpd.serve_forever()
if __name__ == "__main__":
run(port=8000)
运行上述代码后,你可以在浏览器中访问 http://localhost:8000
来查看当前目录下的文件。
这些例子展示了Python的一些基本和高级功能,希望对你有所帮助!