3、Python基础速通(上):变量与数据类型、字符串操作、列表与字典、条件判断与循环
说实话,很多法律人一听到「编程」两个字就头大。我完全理解。
但Python不一样。它就像法律文书里的白话文——简单、直接、好理解。我当年带团队做法律检索系统时,发现很多同事其实不是学不会,而是被吓住了。今天咱们就把这层窗户纸捅破。
3.1 变量与数据类型:给数据贴个标签
变量是什么?说白了就是一个名字,用来存数据。就像你给案卷编号一样——「民初字第123号」就是一个变量,指向一份具体的卷宗。
# 这是变量赋值
case_number = "民初字第123号"
party_name = "张三"
claim_amount = 500000.00
is_settled = False
Python里常见的数据类型,我列个表给你看:
| 类型 | 例子 | 说明 |
|---|---|---|
| int(整数) | 500000 | 金额、数量 |
| float(浮点数) | 3.14159 | 带小数的数字 |
| str(字符串) | "判决书" | 文本内容 |
| bool(布尔值) | True / False | 是/否判断 |
我的小习惯:变量名尽量用英文,别用拼音。比如用 plaintiff 而不是 yuangaoren。虽然Python支持中文变量名,但团队协作时容易出乱子。
3.2 字符串操作:处理法律文本的基本功
法律人每天跟文字打交道。字符串操作就是你处理文本的瑞士军刀。
# 字符串拼接
clause1 = "根据《合同法》"
clause2 = "第52条规定"
full_text = clause1 + clause2
print(full_text) # 输出:根据《合同法》第52条规定
# 字符串格式化(我特别喜欢这个)
name = "李四"
age = 35
info = f"当事人:{name},年龄:{age}岁"
print(info) # 输出:当事人:李四,年龄:35岁
你想想看,如果你要批量处理100份判决书,手动复制粘贴得多累?用字符串操作,几行代码就搞定了。
我曾经踩过的坑:字符串拼接时,忘记加空格。结果「根据《合同法》第52条规定」变成了「根据《合同法》第52条规定」——中间少了个空格,读起来特别别扭。后来我养成了习惯,拼接时主动加空格。
3.3 列表与字典:组织数据的两种方式
列表就像文件夹,按顺序放东西。字典就像档案柜,每个格子都有标签。
# 列表:有序的集合
case_list = ["民初字第1号", "民初字第2号", "民初字第3号"]
print(case_list[0]) # 输出:民初字第1号
# 字典:键值对
case_info = {
"案号": "民初字第123号",
"当事人": "张三",
"案由": "合同纠纷",
"标的额": 500000
}
print(case_info["当事人"]) # 输出:张三
我在做法律知识图谱时,字典用得特别多。每个实体(当事人、法院、案由)都是一个键,对应的属性就是值。查找起来快得很。
3.4 条件判断:让代码学会做决定
条件判断就是让代码根据情况走不同的路。就像法官判案——如果证据充分,就支持;否则,驳回。
# 条件判断示例
claim_amount = 500000
if claim_amount > 1000000:
print("属于大额案件,需要合议庭审理")
elif claim_amount > 500000:
print("属于中等案件,普通程序审理")
else:
print("属于小额案件,简易程序审理")
核心逻辑:if 后面跟条件,条件为真就执行。elif 是「否则如果」,else 是「其他情况」。记住这个顺序就行。
3.5 循环:批量处理的艺术
循环就是重复做一件事。你想想看,如果你要检查100份合同里的违约金条款,手动翻得累死。用循环,几秒钟搞定。
# for循环:遍历列表
contracts = ["合同A", "合同B", "合同C"]
for contract in contracts:
print(f"正在检查:{contract}")
# while循环:条件控制
count = 0
while count < 3:
print(f"第{count+1}次尝试")
count += 1
我个人更常用 for 循环,因为它更直观。while 循环容易写成死循环——我刚开始学的时候就犯过这错,程序一直跑停不下来,最后只能强制关机。
避坑指南:写循环时,一定要确保有退出条件。for 循环天然有边界(遍历完就停),while 循环你得自己控制。我曾经写过一个 while True 忘记加 break,结果服务器CPU跑满,被运维同事骂了一顿。
知识体系总览
下面这张图,把咱们今天讲的内容串起来了:
嗯,今天的内容就到这儿。变量是基础,字符串是工具,列表和字典是组织方式,条件判断和循环是控制逻辑。把这几个点吃透了,后面写代码就顺了。