当前位置:首页 » 《休闲阅读》 » 正文

【Python】函数、文件和文件夹操作

14 人参与  2024年12月31日 12:00  分类 : 《休闲阅读》  评论

点击全文阅读


第六节:函数

一、函数的定义

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

函数能提高应用的模块性,和代码的重复利用率。Python提供了许多内建函数,比如print()。我们也可以自己创建函数,这被叫做用户自定义函数。

1 定义函数

def 函数名(参数):    代码1    代码2    ......

2 调用函数

函数名(参数)

注意:

1. 不同的需求,参数可有可无。2. 在Python中,函数必须:先定义后使用。

二、函数中的参数

1、必要传参,也叫位置参数

定义函数时,根据需求必需要传递的参数, 而且,在调用函数时根据函数定义的参数位置顺序来传递参数。

注意:传递和定义参数的顺序及个数必须一致。

2、关键字传参

函数调用,通过“键=值”形式加以指定。可以让函数更加清晰、容易使用,同时也清除了参数的顺序需求。

注意: 函数调用时,如果有位置参数时,位置参数必须在关键字参数的前面,但关键字参数之间不存在先后顺序。

3、默认传参

用于定义函数,为参数提供默认值,调用函数时可不传该默认参数的值(注意:所有位置参数必须出现在默认参数前,包括函数定义和调用)。

4、不定长传参

不定长参数也叫可变参数。用于不确定调用的时候会传递多少个参数(不传参也可以)的场景。此时,来进行参数传递,会显得非常方便。

不定长普通参数不定长关键字参数

三、函数的返回值

return 语句用于返回函数的值,并且退出函数,选择性地使用return 语句, 默认是返回 None

return a, b写法,返回多个数据的时候,默认是元组类型。return后面可以连接列表、元组或字典,以返回多个值。

四、局部变量和全局变量

1、局部变量

就是在函数内部定义的变量;其作用范围是这个函数内部,即只能在这个函数中使用,在函数的外部是不能使用的;

因为其作用范围只是在自己的函数内部,所以不同的函数可以定义相同名字的局部变量

当函数调用时,局部变量被创建,当函数调用完成后这个变量就不能够使用了

2、全局变量

全局变量和局部变量的区别在于定义在函数的外面,全局变量在整个py文件中声明,全局范围内可以使用;

注意: 当函数内出现局部变量和全局变量相同名字时,函数内部中的 变量名 = 数据 ,此时理解为定义了一个局部变量,而不是修改全局变量的值。如果要修改全局变量,必须使用global。

五、总结

函数的定义:可重复使用的,用来实现某个功能的代码段。

函数使用

定义函数
def 函数名():    代码1    代码2    ...
调用函数
函数名()

函数的参数:

必要传参默认传参关键字传参不定长传参

函数的返回值

作用:函数调用后,返回需要的计算结果return关键字

局部变量和全局变量

局部变量:在函数内部定义的变量,只能在函数内部使用。全局变量:是在函数外部定义的变量,所有函数内部都可以使用这个变量。

第七节:文件和文件夹的操作

一、IO流(Stream)

通过“流”的形式允许计算机程序使用相同的方式来访问不同的输入/输出源。stream是从起源(source)到接收的(sink)的有序数据。我们这里把输入/输出源对比成“水桶”,那么流就是“管道”。

文件流: 就是源或者目标都是文件的流。

image.png

二、文件流的操作

打开文件流
文件对象 = open(目标文件, 访问模式)

操作

文件对象.read()文件对象.readlines()文件对象.readline()
文件对象.write()
seek() 指针操作

关闭

文件对象.close()
访问模式
模式描述
r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
r+打开一个文件用于读写。文件指针将会放在文件的开头。
rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
w打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
w+打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
wb+以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。
a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
a+打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。

三、文件和文件夹的操作

在Python中文件和文件夹的操作要借助os模块里面的相关功能。OS模块是Python标准库中的一个用于访问操作系统功能的模块。

首先需要导入OS模块: import os

import os                           # 使用之前先导入os.name                             # 查看当前操作系统的名字,"nt"表示Windows,"posix"表示Linuxos.sep                              # 获取当前系统平台路径分隔符os.getcwd()                         # 获取当前工作目录os.environ[key]/os.getenv(key)      # 获取当前环境变量值os.listdir(path)                    # 列出指定目录path的所有文件和目录名os.chdir(path)                      # 切换目录os.mkdir(path)/os.makedirs(path)    # 创建单层目录/多层目录os.rmdir(path)/os.removedirs(path)  # 删除单层空目录/多层空目录os.remove(file_name)                # 删除文件os.rename(old_name,new_name)        # 修改文件或目录名称os.path.abspath(path)               # 获取指定相对路径的绝对路径os.path.split(path)                 # 获取指定路径的目录名或文件名os.path.isfile(path)                # 判断指定路径目标是否为文件os.path.isdir(path)                 # 判断指定路径目标是否为目录os.path.exists(path)                # 判断指定路径是否存在os.path.splitext(path)              # 分离文件拓展名os.path.join(path,*paths)           # 路径连接os.path.base(path)                  # 提取文件名os.path.dirname(path)               # 提取文件路径os.path.getsize(path)               # 返回文件大小

点击全文阅读


本文链接:http://m.zhangshiyu.com/post/209677.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

关于我们 | 我要投稿 | 免责申明

Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1