Python经典程序100例,从基础到进阶练习项目


Python经典程序100例

1. 第一个Python程序:打印“Hello, World!”

python

print("Hello, World!")

2. 变量交换

python

a = 6

b = 7

使用临时变量

temp = a

a = b

b = temp

print(f"a: {a}, b: {b}")

不使用临时变量

a, b = b, a

print(f"a: {a}, b: {b}")

3. 判断奇偶性

python

num = int(input("请输入一个整数: "))

if num % 2 == 0:

print(f"{num} 是偶数")

else:

print(f"{num} 是奇数")

4. 计算阶乘

python

def factorial(n):

if n == 0:

return 1

else:

return n factorial(n-1)

num = int(input("请输入一个整数: "))

print(f"{num} 的阶乘是 {factorial(num)}")

5. 斐波那契数列

python

def fibonacci(n):

if n <= 1:

return n

else:

return fibonacci(n-1) + fibonacci(n-2)

num = int(input("请输入一个整数: "))

print(f"第 {num} 个斐波那契数是 {fibonacci(num)}")

6. 冒泡排序

python

def bubble_sort(lst):

n = len(lst)

for i in range(n):

for j in range(0, n-i-1):

if lst[j] > lst[j+1]:

lst[j], lst[j+1] = lst[j+1], lst[j]

return lst

numbers = [64, 34, 25, 12, 22, 11, 90]

print("排序前:", numbers)

numbers = bubble_sort(numbers)

print("排序后:", numbers)

7. 选择排序

python

def selection_sort(lst):

for i in range(len(lst)):

min_idx = i

for j in range(i+1, len(lst)):

if lst[j] < lst[min_idx]:

min_idx = j

lst[i], lst[min_idx] = lst[min_idx], lst[i]

return lst

numbers = [64, 34, 25, 12, 22, 11, 90]

print("排序前:", numbers)

numbers = selection_sort(numbers)

print("排序后:", numbers)

8. 插入排序

python

def insertion_sort(lst):

for i in range(1, len(lst)):

key = lst[i]

j = i-1

while j >=0 and key < lst[j] :

lst[j+1] = lst[j]

j -= 1

lst[j+1] = key

return lst

numbers = [64, 34, 25, 12, 22, 11, 90]

print("排序前:", numbers)

numbers = insertion_sort(numbers)

print("排序后:", numbers)

9. 反转字符串

python

def reverse_string(s):

return s[::-1]

s = "Hello, World!"

print(f"反转后的字符串是: {reverse_string(s)}")

10. 字符串替换

python

s = "Hello, World!"

s = s.replace("World", "Python")

print(s)

这只是Python经典程序100例中的一部分,后续将涉及更复杂的算法、数据结构、文件操作、网络编程、GUI编程等。每个例子都旨在帮助读者理解和掌握Python的某个特定方面。通过这100个例子,读者可以从基础到进阶,逐步提高Python编程能力。