概述
函数基础
一、函数基本操作
1.函数基本概念
函数是对程序逻辑进行结构化或过程化的一种编程方法
什么是函数,是可以重复执行的语句块,可以重复调用
2.作用
用于封装语句块,提高代码的重要性
3.创建函数
函数使用def语句来创建的,语法格式如下:
def 脚本名字():
#定义函数say()
def say():
#功能 输出6次 我爱你中国
for i in range(6):
print(“我爱你中国”)
print("_" * 50) #输出分隔线
say() #第一次调用函数
say() #第二次调用
say() #第三次调用函数
标题行有def关键字,函数的名字,以及参数的集合(如果有的话)组成
4. 调用函数
同大多数语言相同,Python用一对圆括号调用函数
如果没有加圆括号,只是对函数的引用
5. 函数的返回值
多数情况下,函数并不直接输出数据,而是向调用者返回值
函数的返回值使用 return 关键字
`没有 return 的话,函数默认返回 None(无)
(1)
#定义函数say()
def say():
for i in range(6):
print("我爱你中国")
print("_" * 50) # 输出分隔线
return "ok"
x= say()
print(x)
(2)
#功能计算数字10+10的和
def numsum():
s = 10 + 10
print("10 + 10 =",s)
return s
k= numsum()
print(k)
[root@dc python]# python3 3.py
10 + 10 = 20
20
二、函数参数
1.定义函数
●形式参数
——函数定义时,紧跟在函数名后(圆括号内)的参数被称为形式参数,简称形参。由于他不是实际存在变量,所以又称虚拟变量
●实际参数
——在住调函数中调用一个函数时,函数名后面括弧中的参数(可以是一个表达式)成为实际参数,简称实参。
def numsum(a,b): #形参
s = a + b
print(a , “+” , b , “=” , s)
numsum(20,30) #实参
numsum(50,60)
numsum(40,80)
[root@dc python]# python3 3.py
20 + 30 = 50
50 + 60 = 110
40 + 80 = 120
2.传递参数
●调用函数时,实参的个数需要与形参个数一致
●实参将依次传递给形参
def numsum(a,b): #形参
s = a + b
print(a , “+” , b , “=” , s)
numsum(20,30) #实参
numsum(50,60)
numsum(40,80)
[root@dc python]# python3 3.py
20 + 30 = 50
50 + 60 = 110
40 + 80 = 120
3.位置参数
●与shell脚本类似,程序名以及参数都以位置参数的方式传递给Python程序
●使用sys模块的 argv 列表接收
#功能计算任意个数相加的和的脚本 可以执行脚本输入 要计算的数
import sys
x=sys.argv
y = 1
sum = 0
while y < len(x)
sum += int(x[y])
y += 1
print("相加的和:",sum)
import sys
x=sys.argv
y = 1
sum = 0
for y in range(1,len(x))
sum += int(x[y])
y += 1
print("相加的和:",sum)
[root@dc python]# python3 4.py 60 70 70
相加的和: 200
4.默认参数
●默认参数就是声明了默认值的参数
●因为给参数赋予了默认值,所以在函数调用时,不向该参数传入值也是允许的
#给函数的参数设置默认值,如果有多个形参默认值要在参数列表的末尾
#功能输出指定个数的一条线
def lines(y,x=20):
print(“形参y的值:”,y)
print("" * x)
lines(45)
lines(50,60)
[root@dc python]# python3 5.py
形参y的值: 45
形参y的值: 50
#星号 * 变成了横线
●案例一、 编写脚本jsq.py 计算器练习题
能够对任意个数 单元 + — * /
jslx = input("请选择你要做什么运算: + - * / ")
L = []
while True:
x = input(“请输入要计算的数字,敲回车结束输入”)
if x == “”:
break
L.append(x)
def he():
x = 0 #累加的和
y = 0 #定义循环结构的初值
while y < len(L):
x += int(L[y])
y += 1
print("相加的和 = ", x)
def cha():
x = int(L[0]) #做减法计算的初值
for y in range(1,len(L)):
x -= int(L[y])
print("相减的差 = ",x)
def ji():
x = int(L[0]) #做乘法计算的初值
for y in range(1,len(L)):
x *= int(L[y])
print("相乘的积 = ",x)
def shang():
x = int(L[0]) #做除法计算的初值
for y in range(1,len(L)):
x //= int(L[y])
print("相除的商 = ",x)
if jslx == “+”:
he()
elif jslx == “-”:
cha()
elif jslx == “*”:
ji()
elif jslx == “/”:
shang()
模块
一个.py 文件就是一个模块 ,模块是含有一些列数据,函数,类等的程序 - 作用 把相关功能的函数等放在一起有利于管理,有利于多人合作开发
**- 模块的分类
- 内置模块(在python3 程序内部,可以直接使用)
- 标准库模块(在python3 安装完后就可以使用的 )
- 第三方模块(需要下载安装后才能使用)
- 自定义模块(用户自己编写)**
导入模块 import 模块名
import 模块名列表
from 模块名 import 函数
例子
import os
import sys , string
from random import randint
string.digits
‘0123456789’randint(1,3)
3
模块的特殊变量 name
直接执行脚本时 name 变量的值 是 main 被当做模块导入是 值是脚本名
应用如下
[root@teacher code]# cat cfb.py
def jjcfb():
j = 1
while j <= 9:
j += 1
print(j)
if name == ‘main’:
jjcfb()
[root@teacher code]# cat 10.py
import cfb
#cfb.jjcfb()
cfb.jjcfb()
print("+" * 50)
[root@teacher code]# python3 10.py
2
3
4
5
6
7
8
9
10
最后
以上就是默默路人为你收集整理的函数基础,模块的全部内容,希望文章能够帮你解决函数基础,模块所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复