Python 初学者常用编程代码示例与基础语法详解
本文整理了 Python 初学者常用的编程代码示例,涵盖循环控制、数据结构操作、基础算法实现及常用库使用等内容。通过具体代码片段演示了列表遍历、素数判断、顺序表逆置、九九乘法表打印等典型场景,并补充了文件读写、异常处理及面向对象基础等实用技巧,帮助新手快速掌握核心语法与逻辑构建方法。

本文整理了 Python 初学者常用的编程代码示例,涵盖循环控制、数据结构操作、基础算法实现及常用库使用等内容。通过具体代码片段演示了列表遍历、素数判断、顺序表逆置、九九乘法表打印等典型场景,并补充了文件读写、异常处理及面向对象基础等实用技巧,帮助新手快速掌握核心语法与逻辑构建方法。

对于刚开始接触编程的开发者来说,Python 因其简洁的语法和强大的功能库而成为首选语言。许多新手往往被复杂的代码结构吓退,但实际上,Python 的核心逻辑非常直观。掌握基础的语句、关键字以及常见的数据结构操作,就能编写出实用的程序。本文将整理一系列初学者必会的 Python 代码示例,涵盖控制流、数据处理、基础算法及常用库的使用,帮助读者快速入门。
在 Python 中,for...else 结构常用于遍历列表或序列。当循环正常结束(未被 break 中断)时,执行 else 块。这非常适合用于查找特定元素是否存在。
numbers = [2, 4, 6, 8, 1]
for number in numbers:
if number % 2 == 1:
print(number)
break
else:
print("No odd numbers")
上述代码会输出 1,因为找到了奇数并触发了 break,所以 else 块不会执行。如果列表中全是偶数,则会打印 "No odd numbers"。
打印九九乘法表是练习嵌套循环的经典案例。
for i in range(1, 10):
for j in range(1, i + 1):
print('{}x{}={}'.format(j, i, i * j), end='\t')
print()
通过双重循环,外层控制行数,内层控制列数,利用格式化字符串对齐输出结果。
处理用户输入并进行数值计算是基础需求。注意将输入转换为浮点数以支持小数运算。
num1 = input('输入第一个数字:')
num2 = input('输入第二个数字:')
sum_val = float(num1) + float(num2)
print('数字 {0} 和 {1} 相加结果为:{2}'.format(num1, num2, sum_val))
使用 random 模块可以生成指定范围内的随机整数。
import random
print(random.randint(0, 9))
randint(a, b) 函数返回一个包含 a 和 b 的随机整数。
使用星号 * 可以将列表中的所有元素解包,作为参数传递给函数。
my_list = [1, 2, 3, 4]
print(*my_list) # 输出:1 2 3 4
此外,还可以利用解包获取列表中间的元素。
_, *elements_in_the_middle, _ = [1, 2, 3, 4, 5, 6, 7, 8]
print(elements_in_the_middle) # 输出:[2, 3, 4, 5, 6, 7]
一行代码即可同时给多个变量赋值,提高代码简洁性。
one, two, three, four = 1, 2, 3, 4
使用 clear() 方法可以清空列表中的所有元素。
RUNOOB = [6, 0, 4, 1]
print('清空前:', RUNOOB)
RUNOOB.clear()
print('清空后:', RUNOOB)
使用 enum 模块定义常量集合,增强代码的可读性和安全性。
from enum import Enum
class Status(Enum):
NO_STATUS = -1
NOT_STARTED = 0
IN_PROGRESS = 1
COMPLETED = 2
print(Status.IN_PROGRESS.name) # 输出:IN_PROGRESS
print(Status.COMPLETED.value) # 输出:2
字符串乘以整数可以实现重复拼接。
name = "Banana"
print(name * 4) # 输出:BananaBananaBananaBanana
利用 calendar 模块可以轻松获取某年某月的天数及星期信息。
import calendar
monthRange = calendar.monthrange(2016, 9)
print(monthRange)
输出为 (3, 30),表示 2016 年 9 月第一天是星期三(索引 3),该月共有 30 天。
判断素数是经典的算法题。素数是指大于 1 且只能被 1 和自身整除的自然数。
lower = int(input("输入区间最小值:"))
upper = int(input("输入区间最大值:"))
for num in range(lower, upper + 1):
if num > 1:
for i in range(2, num):
if (num % i) == 0:
break
else:
print(num)
定义函数计算差值,建议使用命名参数以避免顺序错误。
def subtract(a, b):
return a - b
print(subtract(a=1, b=3)) # 输出:-2
print(subtract(b=3, a=1)) # 输出:-2
这是一个经典的数据重排问题。要求时间复杂度 O(n),空间复杂度 O(1)。在 Python 中可以通过双指针法实现类似逻辑。
def move_odd_even(arr):
left, right = 0, len(arr) - 1
while left < right:
while left < right and arr[left] % 2 == 1:
left += 1
while left < right and arr[right] % 2 == 0:
right -= 1
if left < right:
arr[left], arr[right] = arr[right], arr[left]
return arr
# 测试
nums = [1, 2, 3, 4, 5, 6]
print(move_odd_even(nums)) # 输出可能为:[1, 5, 3, 4, 2, 6] 等
将列表中的元素顺序反转,同样可以使用双指针交换法。
def reverse_list(lst):
start, end = 0, len(lst) - 1
while start < end:
lst[start], lst[end] = lst[end], lst[start]
start += 1
end -= 1
return lst
# 测试
nums = [1, 2, 3, 4, 5]
print(reverse_list(nums)) # 输出:[5, 4, 3, 2, 1]
找到最小值并删除,用最后一个元素填补空缺。
def delete_min(lst):
if not lst:
return False
min_val = min(lst)
lst.remove(min_val)
return True
# 测试
nums = [6, 0, 4, 1]
delete_min(nums)
print(nums) # 输出:[6, 4, 1]
移除列表中值在 x 到 y 之间的所有元素。
def del_range(lst, x, y):
i = 0
k = 0
while i < len(lst):
if x <= lst[i] <= y:
k += 1
else:
lst[i - k] = lst[i]
i += 1
del lst[len(lst) - k:]
return lst
# 测试
nums = [1, 2, 3, 4, 5, 6]
del_range(nums, 2, 4)
print(nums) # 输出:[1, 5, 6]
为了进一步提升编程能力,初学者还应掌握以下常用场景的代码实现。
学习如何读取文本文件和写入数据是自动化处理的基础。
# 写入文件
with open('test.txt', 'w', encoding='utf-8') as f:
f.write('Hello, Python!')
# 读取文件
with open('test.txt', 'r', encoding='utf-8') as f:
content = f.read()
print(content)
使用 with 语句可以自动管理文件资源,避免忘记关闭文件。
程序运行中难免出现错误,使用 try-except 结构可以捕获异常,防止程序崩溃。
try:
result = 10 / 0
except ZeroDivisionError:
print("除数不能为零")
finally:
print("执行完毕")
列表推导式是一种简洁创建列表的方法,比传统循环更高效。
squares = [x**2 for x in range(10)]
print(squares) # 输出:[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Lambda 函数适合定义简单的单行函数,常配合 map 或 filter 使用。
add = lambda x, y: x + y
print(add(3, 5)) # 输出:8
字典是键值对存储结构,查询速度极快。
dict_data = {'name': 'Alice', 'age': 25}
print(dict_data.get('name')) # 输出:Alice
dict_data['city'] = 'Beijing'
print(dict_data) # 输出:{'name': 'Alice', 'age': 25, 'city': 'Beijing'}
定义一个简单的类,封装属性和方法。
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def introduce(self):
print(f"Hi, I'm {self.name}, {self.age} years old.")
p = Person('Bob', 30)
p.introduce()
以上代码涵盖了 Python 编程中最核心的语法结构和常见应用场景。从基础的数据类型操作到算法逻辑实现,再到文件处理和面向对象设计,这些知识点构成了 Python 开发的基石。建议初学者在阅读代码的同时,亲自敲入并运行,观察输出结果,逐步理解其背后的逻辑。随着熟练度的提升,可以尝试组合这些片段解决更复杂的问题。

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
使用加密算法(如AES、TripleDES、Rabbit或RC4)加密和解密文本明文。 在线工具,加密/解密文本在线工具,online
生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online
基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online