个人学习 Python 过程中整理的笔记与示例代码,全部为本机练习记录。
Python 是动态类型语言,变量不需要声明类型。常用基础类型有 int、float、str、bool,可以用 type() 查看类型。
name = "唐仔仔"
age = 22
height = 175.5
is_student = True
print(type(name)) # <class 'str'>
print(type(age)) # <class 'int'>
print(f"{name} 今年 {age} 岁")
列表适合存放有序数据,字典适合存放键值对。这两个是日常练习里用得最多的结构。
# 列表
nums = [3, 1, 4, 1, 5]
nums.append(9) # 追加
nums.sort() # 排序
print(nums) # [1, 1, 3, 4, 5, 9]
# 字典
student = {"name": "唐仔仔", "age": 22}
student["city"] = "成都" # 新增键值
for k, v in student.items():
print(k, "=", v)
列表推导式可以用一行代码生成列表,比循环更简洁。下面练习了筛选和转换两种用法。
# 生成 1~10 的平方 squares = [x * x for x in range(1, 11)] print(squares) # 筛选出偶数 evens = [x for x in range(1, 21) if x % 2 == 0] print(evens) # 把字符串列表转成大写 words = ["hello", "python", "code"] upper = [w.upper() for w in words] print(upper)
用 def 定义函数,参数可以设置默认值。返回值用 return。
def greet(name, greeting="你好"):
return f"{greeting},{name}!"
print(greet("唐仔仔")) # 你好,唐仔仔!
print(greet("小明", "早上好")) # 早上好,小明!
用 with open() 打开文件更安全,会自动关闭。注意指定编码为 utf-8,避免中文乱码。
# 写入
with open("note.txt", "w", encoding="utf-8") as f:
f.write("今天的 Python 练习完成\n")
# 读取
with open("note.txt", "r", encoding="utf-8") as f:
for line in f:
print(line.strip())
整理资料时写的一个小脚本,把目录下的 .jpeg 图片统一改成 .jpg 后缀。
import os
folder = "./images"
for name in os.listdir(folder):
if name.endswith(".jpeg"):
old = os.path.join(folder, name)
new = os.path.join(folder, name[:-5] + ".jpg")
os.rename(old, new)
print("已重命名:", name)