2、Python基础速通(上):变量与数据类型、字符串操作、列表与字典。为什么这些是RPA的基础?
各位同学,欢迎来到第二章。
说实话,很多初学者一上来就急着学那些花里胡哨的自动化库,结果连个字符串都拼接不明白。我见过太多这样的案例了——代码跑起来全是报错,最后发现是变量类型搞混了。
这一章,咱们就把Python最核心的几个基础概念啃透。你想想看,RPA说白了就是让机器模拟人操作,而人操作的核心无非就是:拿数据、处理数据、输出数据。这三板斧,全得靠变量、字符串、列表和字典来撑腰。
2.1 变量与数据类型:RPA的“内存小纸条”
变量是什么?我习惯把它想象成一张便利贴。你往上面写个数字,它就是数字;写句话,它就是字符串。Python这点特别友好——不用像C语言那样提前声明类型,直接赋值就行。
# 这就是变量,简单粗暴
name = "张三"
age = 28
salary = 15000.50
is_active = True
嗯,这里要注意:Python里常见的几种数据类型,你得心里有数:
| 类型 | 例子 | RPA场景 |
|---|---|---|
| 整数 (int) | 100, -5, 0 | 行数、列数、循环次数 |
| 浮点数 (float) | 3.14, 99.9 | 金额、百分比、坐标 |
| 字符串 (str) | "你好", 'Excel路径' | 文件名、网页标题、用户输入 |
| 布尔值 (bool) | True, False | 判断按钮是否可点、文件是否存在 |
核心要点:RPA里90%的数据,无非就是这四种。你抓取网页上的价格,是字符串还是数字?你判断登录是否成功,返回的是True还是False?想清楚这些,代码就不会写歪。
我的小习惯:给变量起名时,尽量用英文,别用拼音。比如用 user_name 而不是 yonghuming。为什么?因为RPA项目后期往往要团队协作,拼音看着太费劲了。
2.2 字符串操作:RPA的“文字加工厂”
字符串操作,绝对是RPA里最频繁的动作。你想想看,从Excel读出来的单元格内容是字符串,从网页抓取的标题也是字符串,甚至文件路径都是字符串。
我个人觉得,字符串操作学好了,RPA就学会了一半。
2.2.1 拼接与格式化
拼接字符串,最基础的就是用 +。但说实话,在RPA里我更推荐用 f-string,简洁又直观。
# 老式拼接(容易出错)
message = "用户" + name + "的年龄是" + str(age) + "岁"
# 我推荐的方式(f-string,Python 3.6+)
message = f"用户{name}的年龄是{age}岁"
print(message) # 输出:用户张三的年龄是28岁
我曾经踩过的坑:用 + 拼接时,数字和字符串不能直接加,得先转成 str()。有一次我忘了转,程序直接崩了,排查了半天才发现是类型问题。从那以后,我就全面改用 f-string 了。
2.2.2 常用方法
字符串自带的方法,在RPA里简直是神器。我挑几个最常用的:
text = " Hello, RPA World! "
# 去掉首尾空格(从Excel读数据时经常用)
clean_text = text.strip()
print(clean_text) # "Hello, RPA World!"
# 替换(比如把中文逗号换成英文逗号)
replaced = text.replace("RPA", "Automation")
print(replaced) # " Hello, Automation World! "
# 分割(把一行CSV数据拆成列表)
csv_line = "张三,28,北京"
parts = csv_line.split(",")
print(parts) # ['张三', '28', '北京']
# 判断是否包含(检查网页是否加载成功)
if "成功" in response_text:
print("操作完成")
为什么这些是RPA的基础?因为RPA经常要处理各种格式的数据。比如从Excel读出来的数字可能带空格,你得 strip();从网页抓的日期格式不对,你得 replace();把一整段文本拆成字段,你得 split()。这些操作,几乎每个RPA脚本都会用到。
2.3 列表与字典:RPA的“数据收纳盒”
单个变量只能存一个值,但RPA里经常要处理一堆数据。比如从Excel读100行记录,或者从网页抓取一个表格。这时候,列表和字典就派上用场了。
2.3.1 列表:有序的“购物清单”
列表就是一组有序的数据,用方括号 [] 表示。我习惯把它想象成购物清单——按顺序记下来,按顺序取用。
# 创建一个列表
fruits = ["苹果", "香蕉", "橘子"]
# 添加元素
fruits.append("葡萄")
print(fruits) # ['苹果', '香蕉', '橘子', '葡萄']
# 按索引取值(注意:索引从0开始)
first_fruit = fruits[0] # "苹果"
# 遍历列表(RPA里最常用的操作)
for fruit in fruits:
print(f"正在处理:{fruit}")
我的经验:在RPA里,列表经常用来存“待处理的任务”。比如从Excel读出一列订单号,存到列表里,然后一个个处理。用 for 循环遍历,简单又高效。
2.3.2 字典:带标签的“文件柜”
字典用花括号 {} 表示,里面是键值对。说白了,就是给每个数据贴个标签,方便查找。
# 创建一个字典,存用户信息
user = {
"name": "张三",
"age": 28,
"city": "北京"
}
# 通过键取值
print(user["name"]) # 张三
# 修改值
user["age"] = 29
# 添加新键值对
user["phone"] = "13800138000"
# 遍历字典(RPA里经常用)
for key, value in user.items():
print(f"{key}: {value}")
为什么字典在RPA里这么重要?因为现实世界的数据,大多都是“带标签”的。比如一个Excel表格,表头就是键,每一行数据就是值。用字典来存,代码可读性极高,而且不容易搞混。
2.3.3 列表与字典的组合使用
真正的RPA项目里,往往是列表套字典,或者字典套列表。比如从Excel读一个表格:
# 模拟从Excel读取的数据
users = [
{"name": "张三", "age": 28, "city": "北京"},
{"name": "李四", "age": 32, "city": "上海"},
{"name": "王五", "age": 25, "city": "广州"}
]
# 遍历处理每个用户
for user in users:
print(f"正在处理:{user['name']},来自{user['city']}")
# 这里可以写RPA操作,比如发送邮件、填写表单等
我曾经犯过的错:刚开始用字典时,我总记不住键名的大小写。Python是区分大小写的,user["Name"] 和 user["name"] 完全是两码事。后来我养成了一个习惯:所有键名统一用小写加下划线,比如 user_name,这样就不会搞混了。
2.4 总结:为什么这些是RPA的基础?
好,咱们来捋一捋。
RPA的本质是什么?是让机器替人做重复操作。而重复操作的核心,就是数据的读取、处理和输出。
- 变量:帮你临时存数据,就像你手里的便签纸。
- 字符串操作:帮你清洗和格式化文本,就像你整理文件。
- 列表:帮你管理一组有序数据,就像你的待办清单。
- 字典:帮你管理带标签的数据,就像你的通讯录。
说白了,这四样东西,就是RPA脚本的“四肢”。没有它们,你连数据都拿不住,更别提自动化了。
下一章,咱们继续聊条件判断和循环——这两个东西,能让你的RPA脚本真正“活”起来,学会自己决策。到时候你会发现,原来基础打牢了,后面学什么都快。
课后小作业:打开你的Python环境,创建一个列表,里面存3个字典,每个字典代表一个用户(包含姓名、年龄、城市)。然后用 for 循环遍历,打印出每个用户的信息。试试看,你会发现这就是RPA处理数据的雏形。