跳转至

二、数字与字符串:算账的基本功

第 5~8 课

第 5 课 数字运算

Python 算术运算符,财务场景够用了:

符号 作用 例子 结果
+ - * 加、减、乘 4500 * 12 54000
/ 除(必出小数 10000 / 3 3333.33…
// 整除(去小数) 10000 // 3 3333
% 取余 10000 % 3 1
** 乘方 2 ** 10 1024

%(取余)在财务里很实用——「10000 元 3 个人分,每人 3333,还剩 1 块」的那个「1」,就是 10000 % 3

这里撞见了一个重要坑10000 / 3 的结果是 3333.3333333333335,末尾多了个 5。理论上应该是无限循环的 3,但电脑用二进制存小数存不精确。

⚠️ 别用小数(float)算钱。 金额要精确到分,float 会出错。精确计算要用 Decimal,以后再说——先把「float 有精度坑」记住。

第 6 课 类型转换

三种类型之间可以互转:int() 转整数、float() 转小数、str() 转字符串。

为什么需要它?因为文字不能直接算

"4500" + "200"       # '4500200'  ← 文字拼接,不是相加!
int("4500") + 200    # 4700       ← 先转数字,才是真加法

同样是 +,Python 看对象是「文字」还是「数字」,干的事完全不一样。

(顺带一个坑:int("123元") 会报错——「元」字转不了数字。真实表格里的「4500元」「¥5200」都得先清洗符号。)

第 7 课 字符串基础

操作 符号 例子
拼接 + "张三" + "的月租"张三的月租
重复 * "=" * 20 → 20 个等号
长度 len() len("你好")2

拼一句催租通知(注意数字要先用 str() 转成文字):

tenant = "张三"
rent = 4500
print(tenant + "您好,本月租金" + str(rent) + "元,请尽快缴纳。")
# 张三您好,本月租金4500元,请尽快缴纳。

第 8 课 字符串进阶

索引:每个字符都有座位号,从 0 开始数。

name = "张三"
name[0]   # "张"
name[1]   # "三"

切片:截取一段,规则是「含头不含尾」。

"张三您好"[0:2]   # "张三"(取 0、1 两位)

split 拆字:按某个符号切开。

"厦门,湖里,望京路".split(",")
# ['厦门', '湖里', '望京路']

拆出来的结果用方括号包着——那是一种新的数据类型,叫列表,正好是下一块的内容。