python基础(文件操作复习,函数,函数的返回值,函数的参数)

Posted 小帅哥,快来玩呀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础(文件操作复习,函数,函数的返回值,函数的参数)相关的知识,希望对你有一定的参考价值。

文件操作的复习

读:read:一次性的读 、 readlines:一次性的读 、readline:一行一行的读  、缺点:不知道在那结束

视频、图片用rb  属于bytes类型,是按照字节读  for循环(最好的)

写:write

光标:就是文件指针  seek:指定光标移动到某个位置  tell:获取光标当前的位置  truncate:截取文件

关闭文件:close

修改文件:文件是不能修改的

删除文件是:os.remove()

重命名文件:os.rename()

函数

def:定义函数的关键字  格式:def 变量名():

定义了之后,可以在任何需要它的地方调用

#函数定义
def mylen():
    """计算s1的长度"""
    s1 = "hello world"
    length = 0
    for i in s1:
        length = length+1
    print(length)

#函数调用  
mylen()

函数的返回值

return是返回值的关键字

return 是一个关键字,在pycharm里,你会看到它变成蓝色了。你必须一字不差的把这个单词给背下来。

  这个词翻译过来就是“返回”,所以我们管写在return后面的值叫“返回值”

返回值有这几种情况:分别是没有返回值、返回一个值、返回多个值

1,没有返回值(默认返回None)

  不写return的情况下,就会默认返回一个None

#函数定义
def mylen():
    """计算s1的长度"""
    s1 = "hello world"
    length = 0
    for i in s1:
        length = length+1
    print(length)

#函数调用
str_len = mylen()
#因为没有返回值,此时的str_len为None
print(str_len : %s%str_len)

  只写return,一旦遇到了return,就结束整个函数

def ret_demo():
    print(111)
    return
    print(222)

ret = ret_demo()
print(ret)

  return None:和上面的两种情况一样,我们一般不这样写。

def ret_demo():
    print(111)
    return None
    print(222)

ret = ret_demo()
print(ret)

2,返回一个值

  1)return和返回值之间要有空格,可以返回任意数据类型的值。

  2)只要返回就可以接收到。

  3)如果在一个程序中,有多个return只读到第一个return

#函数定义
def mylen():
    """计算s1的长度"""
    s1 = "hello world"
    length = 0
    for i in s1:
        length = length+1
    return length

#函数调用
str_len = mylen()
print(str_len : %s%str_len)

3,返回多个值

  1)多个返回值用多个变量接收,有多少个返回值就用多少个变量接收

def ret_demo2():
    return 1,[a,b],3,4

#返回多个值,用一个变量接收
ret2 = ret_demo2()
print(ret2)

#返回多个值,用多个变量接收
a,b,c,d = ret_demo2()
print(a,b,c,d)

#用多个值接收返回值:返回几个值,就用几个变量接收
a,b,c,d = ret_demo2()
print(a,b,c,d)

 

  2)用一个变量接收的是一个元祖

函数的参数

1,没有参数

  定义函数和调用函数时括号里面都不写内容

2,有一个参数

  传什么就是什么

3,有多个参数

  按照位置参数

站在实参的角度上:

  按照位置传参

def mymax(x,y):
    #此时x=10,y=20
    the_max = x if x > y else y
    return the_max

ma = mymax(10,20)
print(ma)

 

  按照关键字传参

def mymax(x,y):
    #此时x = 20,y = 10
    print(x,y)
    the_max = x if x > y else y
    return the_max

ma = mymax(y = 10,x = 20)
print(ma)

 

  混着用可以,但是必须线按照位置参数,在按照关键字传参

def mymax(x,y):
    #此时x = 10,y = 20
    print(x,y)
    the_max = x if x > y else y
    return the_max

ma = mymax(10,y = 20)
print(ma)

 

  不能给多个变量传多个值

站在形参的角度上:

  位置参数:必须传且有几个参数就传几个值

  默认参数:可以不传的参数,如果不传就用默认的参数,如果传了就用传的

只有调用函数的时候

按照位置传:直接写参数的值

按照关键字:关键字 =值

定义函数的时候 

位置参数:直接定义参数

默认参数:关键字参数:参数名 = “默认的值”  

陷阱:默认参数是一个可变的数据类型

def defult_param(a,l = []):
    l.append(a)
    print(l)

defult_param(alex)
defult_param(egon)

 

动态参数:可以接收任意多个参数,参数前面加*号,习惯参数名args

def mysum(*args):
    the_sum = 0
    for i in args:
        the_sum+=i
    return the_sum

the_sum = mysum(1,2,3,4)
print(the_sum)

 

**kwargs  关键字传参的值,组成一个字典

*args  接收按照位置传参的值,组成一个元祖

args 必须在kwargs之前

顺序:位置参数,*args,默认参数,**kwargs 

动态参数的另一种传参方式:

站在实参的角度上,给一个序列加上*,就是将这个序列按照顺序打散

站在形参的角度上,给变量加上*,就是组合所有传来的值

 

以上是关于python基础(文件操作复习,函数,函数的返回值,函数的参数)的主要内容,如果未能解决你的问题,请参考以下文章

python 函数复习

python函数基础 与文件操作

python 复习 4-1 函数参数返回值递归

Python_复习_33

2022.2.22Python基础复习

函数复习---函数基础