比如abs(-9)= 9 绝对值
round(3.8)= 4 离数值越近的整数
pow(2,4)= 16 指的是2^4
还有 min()max()等等
>>> int(34.6)
34
>>> int(-4.3)
-4
>>> float(21)
21.0
如果你不确定方程的用途的话可以用help来了解
>>> help(abs)
Help on built-in function abs in module builtins:
abs(...)
abs(number) -> number
Return the absolute value of the argument.
第三行是这方程的一般形式,括号内是数字,输出的也是数字 最后一行说明这个方程是求平均值的
又比如
>>> help(pow)
Help on built-in function pow in module builtins:
pow(...)
pow(x, y[, z]) -> number
With two arguments, equivalent to x**y. With three arguments,
equivalent to (x**y) % z, but may be more efficient (e.g. for longs).
告诉我们pow不仅可以用来做幂运算,第三个还能用作求余数。
python为了追踪每个数值,都赋予了他们每个id
>>> help(id)
Help on built-in function id in module builtins:
id(...)
id(object) -> integer
Return the identity of an object. This is guaranteed to be unique among
simultaneously existing objects. (Hint: it's the object's memory
address.)
How cool is that? Let’s try it:
>>> id(-9)
4301189552
>>> id(23.1)
4298223160
>>> shoe_size = 8.5
>>> id(shoe_size)
4298223112
>>> fahrenheit = 77.7
>>> id(fahrenheit)
4298223064
不仅如此,方程也有自己的id
>>> id(abs)
4297868712
>>> id(round)
4297871160
BMI是身高体重指数,方程式是 BMI = (w/h^2) 按照之前的模式我们希望只要输入我们的体重和身高就能输出我们自己的BMI了 BMI(weight, height)
>>>BMI(90, 1.79)
28.089010954714272
我BMI值是28属于肥胖了,需要减肥了 当然现在BMI值还没存在在我们的python中需要我们定义,直接输入BMI的话会出现
>>>BMI(90, 1.79)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'convert_to_celsius' is not defined
这样的错误
那现在我们来定义BMI值吧
>>> def BMI(weight, height):
... return weight/(height**2)
这里我们需要注意的是
不能定义python中已有的关键词 def = return(x)
False assert del for None break elif from True class else global and continue except if
as def finally import
in or
is pass lambda raise nonlocal return not try
while with yield
>>> def quadratic(a, b, c, x):
... first=a*x**2
... second=b*x
... third = c
... return first + second + third
...
>>> quadratic(2, 3, 4, 0.5)
6.0
>>> quadratic(2, 3, 4, 1.5)
13.0
这例子中我们为了能简化return的函数,可以在这个方程中自己定义first, second,third。最后输出的值是这三个定义的值的函数。 但之后我们发现,如果定义好方程后再写代码时,python不会追踪到你之前在上个方程中所定义的first
>>> first
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'first' is not defined
这是因为方程内定义的first只适应与这方程自己。
这是因为python执行一个方程时就好像又重开了一个python,你所定义的first在另外一个python程序中