先说个事:你兜里有50块钱,去楼下买雪糕花了20块。
用Python把这件事写出来,大概就这几行:
money = 50 money = money - 20
print("钱包余额:", money) #这两种打印方法都可以使用
print(f"钱包余额,{money}")
没几行代码,但里面藏着变量、赋值、输出、类型这些最基本的概念。我们挨个拆开看看。
money = 50,这行代码的意思是:创建一个叫 money 的东西,让它等于50。
你可以把变量想成一个贴了标签的盒子。盒子名字叫 money,里面装的东西是 50。
这里有一个关键点:= 在 Python 里不是"等于",是"赋值"。就是把右边的值塞进左边的变量里。刚学的时候经常绕不过这个弯,习惯了就好。
这行是新手最容易卡住的地方。
数学里 money = money - 20 当然不成立,但编程里的等号是赋值,不是相等。
程序执行这行的时候分两步:
第一步,先算右边。money 当前是 50,50 - 20 = 30。
第二步,把算出来的 30 塞回 money 这个盒子。所以执行完之后 money 变成了 30,不再是 50。
就这么简单。以后看到这种写法不用慌,先算右边再赋值左边,记住这个顺序就行。
算完了,你得瞅一眼结果吧。Python 里用 print() 把东西打印到屏幕上。
上面用了两种写法:
print("钱包余额:", money) # 逗号隔开,输出时自动加空格
print(f"钱包余额,{money}") # f-string,花括号里放变量
第一种用逗号分隔文本和变量,Python 会自动在中间塞个空格。第二种叫 f-string,在字符串前面加个 f,然后用花括号把变量包进去。我个人习惯用第二种,写起来顺手,而且可以随便往句子中间插变量。
Python 里数据是分类型的。最常用的就三种:
注意 666 和 "666" 是不一样的。前者是数字,能加减乘除;后者是字符串,就是三个字符而已,你不能拿它做算术。
顺便提一句,"浮点数"这个名字听起来怪,其实就是带小数点的数。叫浮点是因为小数点在数字里可以"浮动"——比如 3.14 也可以写成 0.314×10¹。不用深究,知道 float 等于带小数点的数就行了。用 type() 函数。比如:
print(type(money)) # <class 'int'>
print(type("你好")) # <class 'str'>
print(type(3.14)) # <class 'float'>
也可以先把 type 的结果存到一个变量里再打印:
string_type = type("你好")
print(string_type) # <class 'str'>
写法不唯一,怎么顺手怎么来,本质都是把 type() 的结果打印出来。
有时候你需要把一个数字当成文字拼接,或者把一段文字转成数字做计算。三个函数搞定:
跑一下代码看看:
num_str = str(111) print(type(num_str), num_str) # <class 'str'> 111
num = float("111") print(type(num), num) # <class 'float'> 111.0
num01_int = int(12.3) print(type(num01_int), num01_int) # <class 'int'> 12
a = float(115) print(type(a), a) # <class 'float'> 115.0
有个坑要注意:int(12.3) 结果是 12,不是 13。它不是四舍五入,是直接把小数点后面的砍掉。如果要四舍五入,用 round()。基础的四则运算跟小学数学一样:
print("1+1=", 1 + 1) # 2print("2-1=", 2 - 1)
# 1print("3*4=", 3 * 4) # 12print("15/3=", 15 / 3) # 5.0
除法这里注意一下:Python 里 / 的结果永远是浮点数。15 / 3 等于 5.0,不是 5。
接着是三个稍微特殊一点的:
print("14//3=", 14 // 3) # 4 整除,只取商
print("14%3=", 14 % 3) # 2 取余,只取余数
print("2**6=", 2 ** 6) # 64 2的6次方
// 叫整除,14 除以 3 等于 4 余 2,整除取的是商 4,% 取的是余数 2。这俩经常一起出现,一个拿商,一个拿余数。
** 是幂运算,2 ** 6 就是 2 的 6 次方,等于 64。
七个运算符列在一起:
写到这就差不多了
回头翻一翻,今天这几行代码其实把 Python 最底层的东西都碰了一遍:
变量怎么定义、怎么赋值、怎么改值。print 怎么输出。数据有哪几种类型(int、float、str),怎么查类型,怎么互相转换。运算符除了加减乘除,还有整除、取余、幂运算。
这些东西单独看都很简单,但它们是所有 Python 程序的砖头。后面学判断、循环、函数、类,无非是在这些基础上搭更高的楼。
如果你真的想学会,别光看,打开电脑把代码敲一遍。编程是手上功夫,看十遍不如敲一遍。