Bootstrap

Python自动化--7. 函数的定义和调用

python自动化更贴近运维自动化

Python自动化–1.Python环境安装-linux

Python自动化–2.Python变量

Python自动化–3.Python数据类型

Python自动化–4. python类型转换

Python自动化–5. if判断语句

Python自动化–6. 写一个python程序

Python自动化–7. 函数的定义和调用


7. 函数的定义和调用

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段

函数能提高应用的模块性,和代码的重复利用率。如print()就属于python的内建函数

7.1 函数的定义

#定义函数

def 函数名():
    """函数的说明,主要是说明一下函数的主要功能,这是可选的"""
    函数体,就是代码
    缩进4个空格,多行缩进保持一致

函数名的规则和变量名的命名规则保持一致

7.2 函数的调用

调用方式:

函数名()

python属于解释型语言,也就是代码需要读一行,解释器解释一行。

因此,函数就像是 定义 的一个变量,必须先定义函数,才能调用函数。

在这里插入图片描述

7.3示例

>>> def foo():
...     print("函数体,只有在调用时才会被执行")
... 
>>> foo()
函数体,只有在调用时才会被执行

vim test_def_foo.py

#!/usr/bin/env python3
#file name test_def_foo.py
def guess_number():

    print("猜数字游戏开始")
    while True:
        n = input("请输入一个数字:")
        if not n:
            continue
        if n == 'q':
            print('程序退出')
            break
        n = int(n)

        if n == 18:
            print("猜对了")
            break
        elif n >18:
            print("大了哎!")
        else:
            print("小了哎!")
guess_number()

exit("exit")

7.4写一个python程序

用户输入一个端口号,返回对应服务名,如没有对应服务,返回未知的服务。

vim search_port_server.py

#!/usr/bin/env python3
#用户输入一个端口号,返回对应服务名,如没有对应服务,返回未知的服务。
#端口查询程序

def foo():
    print("端口查询")

    while True:
        n = input("请输入一个端口:")
        n = n.strip()
        if not n:
            continue


        if n == 'q':
            break


        if n == "80":
            print("HTTP 服务")
        elif n == "22":
            print("SSHD 服务")
        elif n == "21" or n == "20":
            print("FTP 服务")
        elif n == "3306":
            print("Mysql 服务")
        else:
            print("未知服务")

    exit("退出程序...")
foo()

;