python知识点(六)自定义函数

一、函数(function)

定义:一段可以完成某个功能的代码。

使用函数:通过函数名即可调用函数,可以让计算机完成某个功能

举例:输入两个数,输出两个数中最大的数

a=int(input())
b=int(input())
c=max(a,b)
print(c)

分析:max()函数
功能:返回给定参数的最大值,参数可以为序列。
语法:max(x, y, z, ....)   #参数可以有若干个

分类:

系统函数:提供给用户的一系列已经编制好的程序

自定义函数:用户根据自己需求编写的一段程序

系统函数

目前python版本提供的系统函数:

官方文档查询:https://docs.python.org/3.7/library/functions.html

Built-in Functions

abs()

delattr()

hash()

memoryview()

set()

all()

dict()

help()

min()

setattr()

any()

dir()

hex()

next()

slice()

ascii()

divmod()

id()

object()

sorted()

bin()

enumerate()

input()

oct()

staticmethod()

bool()

eval()

int()

open()

str()

breakpoint()

exec()

isinstance()

ord()

sum()

bytearray()

filter()

issubclass()

pow()

super()

bytes()

float()

iter()

print()

tuple()

callable()

format()

len()

property()

type()

chr()

frozenset()

list()

range()

vars()

classmethod()

getattr()

locals()

repr()

zip()

compile()

globals()

map()

reversed()

__import__()

complex()

hasattr()

max()

round()

以上系统函数中常用函数整理:

1.输入输出:

input()

print()

2.数据类型及转换:

int()、float()、complex()、bool()、str()

ord()——返回字符的ASCII码值

chr()——返回ASCII码值所对应的字符

3.数学运算:

abs()——返回绝对值

round(a,2)——将a保留2位小数

pow(a,b)——返回a的b次方

sum()、max()、min()

divmod(a,b)——返回a除以b的商和余数

bin(a)——将十进制数a转换为二进制数(binary)

oct(a)——将十进制数a转换位八进制数(octal)

hex(a)——将十进制数a转换位十六进制数(hexadecimal)、

补:int() 其他用法:int(“11”,2)——将二进数11转换位十进制数。第一个参数要用字符串形式

4.序列(列表、元组、集合等等)相关:

list()——将对象转换成列表

tuple()——将对象转换成元组

set()——创建一个无序不重复元素集

dict()——创建一个新的字典

range()——创建一个整数列表

len()——返回一个对象中的元素的个数

sorted()——排序

reversed()——将序列翻转

map()——根据提供的函数对执行序列做映射

slice()——列表的切片

5.文件操作相关:

open()——打开一个文件

6.其他

help()——用于查看函数或模块用途的说明

自定义函数:

用户自己写的:根据自己的要求进行编写

模块:一系列相似功能的函数集合(第三方已编制好并发布,我们可直接导入后使用)

用户自己写的:

基本格式:

def 函数名(参数):
  语句或语句组  #函数体,函数完成某功能的代码
  return 返回值
其中参数用来向函数传递值,当有多个参数时,各参数之间用逗号隔开。函数执行完成后,由return语句将表达式的值返回给调用者,结束函数。
函数调用格式:函数名(参数)

代码分析:

例1:
def cf():
    print("中国")

#主程序
cf()

运行结果:
中国

分析:代码从主程序开始运行,遇到不认识的函数向前找,执行自定义函数。(函数名和函数体不能省)

例2:
def cf(n):   #n是一个形参
    for i in range(n):  #功能:输出n遍中国
        print("中国")   
#主程序
cf(3)   #3是实参
运行结果:
中国
中国
中国

分析:代码从主程序开始运行,遇到不认识的函数向前找,将实参3的值传递给形参n,再执行函数体语句。

例3:
def lj(n):
    s=0
    for i in range(1,n+1):
        s=s+i
    return s

a=lj(10)
print(a)

运行结果:
55

分析:从主程序开始执行,将实参10的值传递给形参n,执行函数体语句,将结果s返回到调用函数即lj(10)的地方,再赋值给变量a。如果没有return s ,lj(10)这个地方则没有值,也就无法赋值或进行算术运算

模块导入:

1.导入整个模块

import 模块名
举例:import math
使用math模块中的函数仍然需要指明模块名
模块名.函数名()
举例:math.sqrt(9)——求出9的平方根

import 模块名 as 昵称
举例:import math as m

2.导入模块中的某个函数

from 模块名 import 函数名
举例:from math import sqrt
使用math模块中sqrt()函数无需指明模块名
sqrt(9)——求出9的平方根

3.导入模块中的所有函数

from 模块名 import *
举例:from math import *
使用math模块中sqrt()函数无需指明模块名
sqrt(9)——求出9的平方根

常见模块整理:

numpy模块:科学计算包,包含很多数学函数,如三角函数、矩阵计算方法等

numpy.arange(0,101,2)生成一个等差数列(可以是小数数列)

pi:数字常量,圆周率

numpy.sin(x)求x的正弦,x必须是弧度

matplotlib模块:python中的绘图库

matplotlib.plot(x,y)将(x,y)列表对应的坐标点连起来

matplotlib.title('sin(x)')创建坐标系的标题

matplotlib.xlabel('x')创建x轴轴标题

matplotlib.ylabel('y')创建y轴轴标题

matplotlib.show()将连好的函数图像显示出来

tkinter 模块:GUI开发模块
tkinter.Tk()创建一个窗口
tkinter.StringVar()提供了一些文本变量,可以绑定到组件,可以设置它们的值
random 模块
random.random()生成一个随机的浮点数,范围是在0.0~1.0之间。
random.randint()随机生一个整数int类型,可以指定这个整数的范围

math模块

ceil:取大于等于x的最小的整数值,如果x是一个整数,则返回x
cos:求x的余弦,x必须是弧度
factorial:取x的阶乘的值
pi:数字常量,圆周率
sqrt:求x的平方根
log2:返回x的基2对数
fabs:返回x的绝对值


 

你可能感兴趣的:(python,开发语言)