python小咖 函数 标准函数库导入import XXX , from XXX import 函数名

本文介绍了Python中的内置函数和标准函数库的导入方法,如`import math`和`from math import sqrt`。同时,详细讲解了如何定义、调用自定义函数,包括位置参数、关键字参数、默认参数和返回值的使用。最后,讨论了变量作用域的概念,并强调了使用函数带来的代码复用和程序结构优化的优势。

内置函数:

print()

input()

int()   float()    str()

abs()  求绝对值

python除了内置的函数以外,还有内置的标准函数库,

把这些额外的函数库导入到程序里,就可以使用这些函数库中提供的方法.

访问这些函数时,需要以 库名.函数名 的方式来应用

标准函数库的导入方式   import XXX

例,求平方根:

import math  #常用方式
a=math.sqrt(2)
print(a)

上面三行语句也可以改写如下:  #当只需从库math中导入sqrt()函数时.

from math import sqrt
a=sqrt(2)   #此时不加math.
print(a)

import random
a= random.randint(0,5)  #random模块里有个random函数,可以生成随机整数0至5,包括0和5
b=random.random()   #不带参数,可以生成0和1之间的随机数字,有小数
print(b)


import time  #与时间有关的

import os  #与系统有关的

#需要用到的时候再去查也行,用不到可以先不管它.

定义一个函数
def是define的缩写,表示定义一个函数
def hello_user():  #名称+()+:

格式:
def函数名称():
    函数内的语句

当我们需要用这个函数时,直接写"函数名称+()"就即可
注意:函数名称中间不要有空格,可以用下划线代替
函数中的语句注意缩进位置,别和程序别的语句混了.

自定义函数格式

def hello_user(user_name):
	print(f'hello!{user_name}')

hello_user('Limei')

●传递参数
   ●位置参数

def test_grade(name,grade):
    print(name +'的成绩是' + grade + '。')

test_grade('李雷','99') #参数的数量和形参数量、位置一一对应.
test_grade(grade='99',name='李雷') #如果想把分数放在前面,可以指明,如本句所示.

  ●关键字参数
    ●默认参数

def test_grade(name='韩梅梅', grade='95'):
    print(name +'的成绩是'+ grade + '。')
    print(f'{name}的成绩是{grade}。')  #格式化输出,与上面一句等效.

test_grade ()    #没填的,由默认值替代.
test_grade ( name ='李雷')    #没填的,由默认值替代.


函数返回值

def函数名称(参数1,参数2,.....):
     函数内的语句
     ......
     return返回内容

#红色部分为必须,绿色的可选

# 上句return定义返回值的关键字

def add(a, b):
    sum_number= a+ b
    return sum_number

value = add(4,12 )
print (value )

如果函数中没有return语句或者return语句不带任何返回值,那么该函数的返回值为None

下面自定义函数中没有return,自定义函数返回None,

x = 1
y = 2
def add (x, y):
    z = x + y
print (add(x,y))

输出结果
None
  • 有return语句
x = 1
y = 2
def add (x, y):
    z = x + y
    return z
print (add(x,y))

输出结果
3

注意:return返回值只能通过print打印才会显示出来,但在交互式模式下不需要print打印

程序读到return()语句,其后的语句不会再被执行

def func1():
    for i in range(1, 5):
        return (i)   #函数执行遇到return,即跳出循环

print (func1())
print ("......")

1
......

def func1():
    for i in range(1, 5):
        return (i)
# print (func1())
# print ("......")
func1()   #直接调用,什么输出也没有.
x = 1
y = 2
def add (x, y):
    z = x + y
    print(z)
print (add(x,y))

输出结果
3
None

此例在打印函数add (x, y)时,函数add (x, y)会执行print (z)语句得到3,但add(x,y)没有return,返回值是None,所以打印输出结果应为3,None

x = 1
y = 2
def add (x, y):
    z = x + y
    print(z)
    return(z)
print (add(x,y))

输出结果
3
3
x = 1
y = 2
def add (x, y):
    z = x + y
    return(z)
    print(z)
print (add(x,y))

输出结果
3

此例因return语句位置与上例不同,函数体内的print没有执行.

 

●变量的作用域  #有关变量的代码,可以放到清华毕老师的代码可视化运行网站(http://pythontutor.makerbean.com/#mode=edit)上运行可能会比较直观一些便于理解.
a=1
def hello( ):
    a=2
    print(a)
hello()
print(a)


2
1

 

a= 1
def hello():
    print(a)
hello( )     #因为函数内部没有定义变量a,
            #函数会自动由内而外的顺序寻找变量.
print(a)

1
1

a=1
def hello( ):
	global a  #此处加个global,表示函数内部用的a是全部变量的a,已定义,不报错.
	print(a) 
	a=2

hello( )
print(a)

1
2

创建并使用函数的好处
1.减少程序中重复的代码
2.使主程序更抽象,结构更清晰
initial( )
draw_head( )
draw_eyes( )
draw_body()
 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值