170 lines
4.8 KiB
Markdown
170 lines
4.8 KiB
Markdown
# 功能
|
||
|
||
> 原文:<https://www.pythonforbeginners.com/basics/python-functions-cheat-sheet>
|
||
|
||
## Python 中的函数是什么?
|
||
|
||
函数是你可以调用的东西(可能有一些参数,你放在括号里的东西),它执行一个动作并返回值。
|
||
|
||
## 我为什么要使用函数?
|
||
|
||
* 将代码任务简化为简单的任务
|
||
* 可以更容易地在开发人员之间分割代码
|
||
* 消除重复代码
|
||
* 重用代码
|
||
* 获得良好的代码结构
|
||
* 更容易调试。
|
||
|
||
## 函数的规则是什么?
|
||
|
||
* Python 中的函数必须在使用前定义。
|
||
* 使用关键字“def ”,后跟函数名和括号()来创建函数。
|
||
* 函数必须被命名,并指定它有什么参数(如果有的话)。
|
||
* 一个函数可以使用多个实参,每个实参都响应函数中的一个参数。
|
||
* 一个函数可以使用多个实参,每个实参都响应函数中的一个参数。
|
||
* 关键字“def”是必需的,并且必须是小写字母。
|
||
* 名字可以是你喜欢的任何东西。
|
||
* 行尾必须以冒号(:)结尾
|
||
* 该函数通常以使用 return 返回值结束。
|
||
* 函数内部的代码必须缩进
|
||
* 调用时使用该函数。
|
||
|
||
## 参数(自变量)
|
||
|
||
参数(也称为自变量)是函数的输入。Python 语言中的所有参数(自变量)都是通过引用传递的。有一些不同类型的参数,其中两个是:
|
||
|
||
### 位置
|
||
|
||
位置参数没有关键字,首先被赋值。
|
||
|
||
### 关键字
|
||
|
||
关键字参数有关键字,在位置参数之后第二个赋值。当你调用一个函数时,你决定使用位置、关键字或者两者的混合。如果你愿意,你可以选择做所有的关键字。
|
||
|
||
## 打电话
|
||
|
||
函数、过程或函数的调用必须有括号。在括号之间,可以有一个或多个参数值,但也可以为空。
|
||
|
||
首先发生的是函数参数获得它们的值,然后继续函数中的其余代码。当一个函数值完成时,它将它返回给调用。
|
||
|
||
**单参数函数调用:**
|
||
|
||
正常=摄氏度至华氏度(摄氏度温度)
|
||
|
||
**不带参数的函数调用:**
|
||
|
||
x =输入()
|
||
|
||
**带两个参数的过程调用:**
|
||
|
||
矩形(20,10)
|
||
|
||
**不带参数的过程调用:**
|
||
|
||
说你好()
|
||
|
||
请记住,当 Python 进行调用时,必须已经定义了函数。
|
||
|
||
## 返回
|
||
|
||
参数是函数的输入,返回值是输出。
|
||
|
||
return 关键字用于从函数中返回值。该函数将根据 return 命令退出。(之后的所有代码都将被忽略)
|
||
|
||
函数可能会也可能不会返回值。如果函数没有 return 关键字,它将发送一个 None 值。
|
||
|
||
## 在 Python 中创建函数
|
||
|
||
在 Python 中创建一个函数的第一件事是定义它并给它一个名字(可能在括号中有一些参数)
|
||
|
||
定义它并给它一个名称> > def name()
|
||
|
||
为函数>>命令创建方向
|
||
|
||
调用函数> > name()
|
||
|
||
通过在定义中创建变量,可以向函数发送值。(这些变量只在这个特定的函数内部起作用)
|
||
|
||
让我们看一个例子:
|
||
|
||
第一行定义了函数号()
|
||
|
||
该函数有两个参数 num1 和 num2
|
||
|
||
第二行将 num1 和 num2 相加
|
||
|
||
```py
|
||
def numbers(num1, num2):
|
||
|
||
print num1+num2
|
||
```
|
||
|
||
如果这个定义在程序的开始,我们要做的就是写 def 数字(1,2)来把值发送给函数。
|
||
|
||
我们通过在函数调用中赋值来实现。你也可以定义数学函数。这需要一个数的平方根:def square(x): return x*x
|
||
|
||
让我们看一个例子,如何创建一个简单的函数的任何参数。
|
||
|
||
```py
|
||
def name():
|
||
# Get the user's name.
|
||
name = raw_input('Enter your name: ')
|
||
|
||
# Return the name.
|
||
return name
|
||
|
||
name()
|
||
```
|
||
|
||
在第二个示例中,显示了如何将参数传递给函数:
|
||
|
||
```py
|
||
def even(number):
|
||
if number % 2 == 0:
|
||
return True
|
||
|
||
else:
|
||
return False
|
||
|
||
print even(10)
|
||
```
|
||
|
||
## 例子
|
||
|
||
如果你还没有读过 Python 的[非程序员教程,读一读吧。这是](https://en.wikibooks.org/wiki/Non-Programmer's_Tutorial_for_Python_2.6/Defining_Functions "non-programmers")[学习 Python](https://www.pythonforbeginners.com/learn-python) 的绝佳资源。
|
||
|
||
这个转换温度的例子是一个如何使用函数的好例子。
|
||
|
||
```py
|
||
def print_options():
|
||
print "Options:"
|
||
print " 'p' print options"
|
||
print " 'c' convert from celsius"
|
||
print " 'f' convert from fahrenheit"
|
||
print " 'q' quit the program"
|
||
|
||
def celsius_to_fahrenheit(c_temp):
|
||
return 9.0 / 5.0 * c_temp + 32
|
||
|
||
def fahrenheit_to_celsius(f_temp):
|
||
return (f_temp - 32.0) * 5.0 / 9.0
|
||
|
||
choice = "p"
|
||
|
||
while choice != "q":
|
||
|
||
if choice == "c":
|
||
temp = input("Celsius temperature: ")
|
||
print "Fahrenheit:", celsius_to_fahrenheit(temp)
|
||
|
||
elif choice == "f":
|
||
temp = input("Fahrenheit temperature: ")
|
||
print "Celsius:", fahrenheit_to_celsius(temp)
|
||
|
||
elif choice != "q":
|
||
print_options()
|
||
|
||
choice = raw_input("option: ")
|
||
```
|
||
|
||
我希望你喜欢这个小抄,希望你今天学到了一些东西。 |