Python超详细基础文件操作(详解版)

Python入门知识总结——超详细版 Python 是一种解释型面向对象的语言Python的语法和动态类型,以及解释性语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言单引号定义法:双引号定义法:三引号定义法:其中,单引号定义法,可以内含双引号;双引号定义法,可以内含单引号;并且可以使用**转义字符(\)**来将引号解除效用,变成普通字符串。 阅读详情
AI摘要

本文详细介绍了Python基础文件操作。包括文件的打开与关闭、读写操作(write、read、readlines、readline)及不同读取方法的区别,还涵盖文件的重命名、删除、创建、获取当前目录等相关操作,最后给出目录清洗、批量改文件名、检测同名文件夹等示例。

一、文件操作

1. 文件打开与关闭

1.1 打开文件

在Python中,你可以使用 open() 函数来打开文件。

以下是一个简单的例子:

# 打开文件(默认为只读模式)
file_path = 'example.txt'
with open(file_path, 'r') as file:
    # 执行文件操作,例如读取文件内容
    file_content = file.read()
    print(file_content)

# 文件在with块结束后会自动关闭,无需显式关闭文件

在上述示例中:

  • 'example.txt' 是文件的路径和名称,你可以根据实际情况修改为你想要打开的文件。

  • 'r' 表示只读模式。如果你想要写入文件,可以使用 'w' 模式,如果想要追加内容,可以使用 'a' 模式等。

  • with open(...) as file : 是使用上下文管理器的方式,确保文件在使用后被正确关闭,即使在处理文件时发生异常也能保证关闭。

1.2 关闭文件

在 Python 中关闭文件有两种主要的方法:

1.2.1 使用 with 语句

with 语句是一种上下文管理器,当它的代码块执行完毕时,会自动关闭文件。这是推荐的方式,因为它确保文件在使用完毕后被正确关闭,即使发生异常也能保证关闭。

file_path = 'example.txt'
with open(file_path, 'r') as file:
    # 执行文件操作,例如读取文件内容
    file_content = file.read()
    print(file_content)
    # 文件在这里已经被自动关闭

1.2.2 使用 close() 方法:

你可以显式调用文件对象的 close() 方法来关闭文件。这种方法适用于一些特殊情况,但相对来说不如 with 语句简洁和安全。

file_path = 'example.txt'
file = open(file_path, 'r')
try:
    # 执行文件操作,例如读取文件内容
    file_content = file.read()
    print(file_content)
finally:
    file.close()

在使用 with 语句时,不需要显式调用 close() 方法。如果你在代码中打开了文件而没有使用 with,请确保在适当的地方调用 close() 以关闭文件,以避免资源泄漏。

2. 访问模式及说明

访问模式说明
r以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
w打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
rb以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
wb以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
ab以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
r+打开一个文件用于读写。文件指针将会放在文件的开头。
w+打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a+打开一个文件用于读写,如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果改文件不存在,创建新文件用于读写。
rb+以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头
wb+以二进制格式打开一个文件用于读写。如果改文件已存在则会覆盖。如果改文件不存在,创建新文件。
ab+以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果改文件不存在,创建新文件用于读写。

二、文件读写

1. 写数据(write)

写入数据通常涉及将信息保存到文件、数据库或其他持久性存储介质中。以下是一些常见的数据写入场景的示例:

1.1 写入文本文件

使用内置的 open 函数来打开文件并写入内容。确保使用适当的模式(例如,'w' 表示写入)。

file_path = 'example.txt'

# 写入文件
with open(file_path, 'w') as file:
    file.write("Hello, this is some data.")

1.2 写入CSV文件

使用 csv 模块来写入CSV格式的文件。

import csv

csv_file_path = 'example.csv'

data = [['Name', 'Age', 'Occupation'],
        ['John Doe', 30, 'Engineer'],
        ['Jane Smith', 25, 'Designer']]

with open(csv_file_path, 'w', newline='') as csvfile:
    csv_writer = csv.writer(csvfile)
    csv_writer.writerows(data)  

1.3 写入JSON文件

使用内置的 json 模块来写入JSON格式的文件。

import json

json_file_path = 'example.json'

data = {"name": "John Doe", "age": 30, "occupation": "Engineer"}

with open(json_file_path, 'w') as jsonfile:
    json.dump(data, jsonfile)

1.4 写入数据库

使用数据库连接库(如 sqlite3、mysql-connector-python 等)与相应的数据库进行交互。

import sqlite3

# 连接到SQLite数据库(假设有一个名为 example.db 的数据库)
conn = sqlite3.connect('example.db')

# 创建一个游标对象
cursor = conn.cursor()

# 执行SQL插入语句
cursor.execute("INSERT INTO users (name, age, occupation) VALUES (?, ?, ?)", ('John Doe', 30, 'Engineer'))

# 提交更改
conn.commit()

# 关闭连接
conn.close()

2. 读数据(read)

读取数据通常涉及从文件、数据库或其他存储介质中检索信息。以下是一些读取数据的常见示例:

2.1 读取文本文件

使用内置的 open 函数来打开文件并读取内容。

file_path = 'example.txt'

# 读取文件
with open(file_path, 'r') as file:
    data = file.read()
    print(data)

2.2 读取CSV文件

使用 csv 模块来读取CSV格式的文件。

import csv

csv_file_path = 'example.csv'

# 读取CSV文件
with open(csv_file_path, 'r') as csvfile:
    csv_reader = csv.reader(csvfile)
    for row in csv_reader:
        print(row)

2.3 读取JSON文件

使用内置的 json 模块来读取JSON格式的文件。

import json

json_file_path = 'example.json'

# 读取JSON文件
with open(json_file_path, 'r') as jsonfile:
    data = json.load(jsonfile)
    print(data)

2.4 从数据库中读取数据

使用数据库连接库(如 sqlite3、mysql-connector-python 等)与相应的数据库进行交互。

import sqlite3

# 连接到SQLite数据库(假设有一个名为 example.db 的数据库)
conn = sqlite3.connect('example.db')

# 创建一个游标对象
cursor = conn.cursor()

# 执行SQL查询语句
cursor.execute("SELECT * FROM users")

# 检索所有行
rows = cursor.fetchall()

# 打印每一行
for row in rows:
    print(row)

# 关闭连接
conn.close()

2. 读数据(readlines)

readlines 是 Python 中用于读取文件的方法之一,它用于逐行读取文件内容,并将每一行作为字符串存储在一个列表中。下面是对 readlines 方法的详细解释:

使用 readlines 方法的基本语法

with open('file.txt', 'r') as file:
    lines = file.readlines()

解释:

  • open('file.txt', 'r') : 打开文件 'file.txt' 以供读取。第一个参数是文件名,第二个参数是打开文件的模式。'r' 表示只读模式。

  • with ... as ... : 使用 with 语句可以确保在读取完成后自动关闭文件,不需要显式调用 file.close()。

  • lines = file.readlines() : readlines 方法用于读取文件的所有行,并将每一行作为一个字符串存储在列表 lines 中。

  • 每个列表元素对应文件中的一行文本。你可以使用列表索引来访问特定行,例如 lines[0] 表示文件的第一行。

例子:假设 ‘file.txt’ 包含以下内容:

Hello, this is line 1.
This is line 2.   
And this is line 3.   

使用 readlines 后:

with open('file.txt', 'r') as file:
    lines = file.readlines()

# lines 现在是一个包含每一行文本的列表
print(lines)
# 输出:
# ['Hello, this is line 1.\n', 'This is line 2.\n', 'And this is line 3.\n']

# 访问特定行
print(lines[0].strip())  # 输出:Hello, this is line 1.

注意事项:

  • 每一行的末尾都包含换行符 \n,你可以使用 strip() 方法去除这些额外的空白字符。

  • readlines 方法适用于处理包含多行文本的文件,但对于大型文件,可能需要考虑逐行读取而不是将整个文件加载到内存中。这可以通过循环遍历文件对象来实现,而不是使用 readlines。

3. 读数据(readline)

readline 是 Python 中用于读取文件的方法之一,它用于逐行读取文件内容,并返回文件中的一行作为字符串。以下是对 readline 方法的详细解释:
使用 readline 方法的基本语法

with open('file.txt', 'r') as file:
    line = file.readline()

解释:

  • open('file.txt', 'r') : 打开文件 'file.txt' 以供读取。第一个参数是文件名,第二个参数是打开文件的模式。'r' 表示只读模式。

  • with ... as ... : 使用 with 语句可以确保在读取完成后自动关闭文件,不需要显式调用 file.close()。

  • line = file.readline() : readline 方法用于读取文件的一行,并将该行作为一个字符串存储在变量 line 中。

例子:假设 ‘file.txt’ 包含以下内容:

Hello, this is line 1.   
This is line 2.   
And this is line 3.   

使用 readline 后:

with open('file.txt', 'r') as file:
    line1 = file.readline()
    line2 = file.readline()
    line3 = file.readline()

print(line1)  # 输出:Hello, this is line 1.
print(line2)  # 输出:This is line 2.
print(line3)  # 输出:And this is line 3.

注意事项:

  • 每个 readline 调用都会读取文件的下一行。

  • 返回的字符串包含行末尾的换行符 \n。如果不需要换行符,可以使用 strip() 方法去除它。

  • 当文件读取完毕后,readline 将返回空字符串 ‘’,因此可以在循环中使用 while line != '' 来逐行读取整个文件。

循环读取整个文件:

with open('file.txt', 'r') as file:
    line = file.readline()
    while line != '':
        print(line.strip())  # 去除换行符
        line = file.readline()

这个循环将逐行读取整个文件,直到文件末尾。

4. readlines 和 readline的区别

readlines 和 readline 是 Python 中用于读取文件的两种不同方法,它们之间有一些重要的区别:

4.1 readlines 方法:

  • 返回类型:readlines 方法返回一个包含文件所有行的列表,其中每个元素都是文件中的一行文本字符串。

  • 使用情况: 适用于处理包含多行文本的文件,可以一次性将整个文件加载到内存中。这种方法适用于文件较小,可以完全装入内存的情况。

  • 例子:

with open('file.txt', 'r') as file:
    lines = file.readlines()`

4.2 readline 方法:

  • 返回类型: readline 方法每次调用只返回文件中的一行作为字符串。如果再次调用,将返回下一行。当文件读取完毕后,返回空字符串 ‘’。

  • 使用情况: 适用于逐行处理大型文件,可以有效地降低内存使用。因为它一次只读取一行,可以在循环中逐行处理文件,而不必将整个文件加载到内存中。

  • 例子:

  with open('file.txt', 'r') as file:
      line = file.readline()
      while line != '':
          print(line.strip())  # 去除换行符
          line = file.readline()

4.3 区别总结:

  • readlines 一次性读取整个文件的所有行,并返回一个包含所有行的列表。

  • readline 逐行读取文件,每次调用返回文件中的一行,适用于处理大型文件,减少内存占用。

  • readlines 返回包含换行符的每一行,而 readline 返回单独的行,需要手动去除换行符。

选择使用哪个方法取决于文件的大小和处理需求。如果文件较小,可以完全装入内存,使用 readlines;如果文件较大,可以逐行处理,使用 readline。

三、文件的相关操作

1. 文件重命名

Python 文件重命名是文件管理中的一个基本操作,可以通过 Python 的内置库来实现。以下是一个超详细的入门指南,介绍如何使用 Python 重命名文件:

1.2 导入必要的库

首先,您需要导入 Python 的 os 库,它提供了许多与操作系统交互的函数。

import os

1.2 准备文件列表

要重命名文件,您需要先列出指定目录中的所有文件。可以使用 os.listdir() 函数来获取目录中的文件列表。

# 列出指定目录中的所有文件和文件夹   
files = os.listdir('path_to_directory')

1.3 遍历文件列表

接着,您需要遍历文件列表,对每一个文件进行重命名。

for file in files:
    # 获取文件的完整路径
    full_path = os.path.join('path_to_directory', file)
    
    # 检查是否是文件
    if os.path.isfile(full_path):
        # 新的文件名
        new_filename = 'new_name'
        
        # 重命名操作
        os.rename(full_path, os.path.join('path_to_directory', new_filename))
        print(f'Renamed {file} to {new_filename}')

1.4 异常处理

在重命名文件时,可能会出现各种异常,例如目标文件已存在、没有足够权限等。为了确保程序的健壮性,应该添加异常处理。

try:
    for file in files:
        # ...(上面的代码)
except OSError as e:
    print(f'Error occurred: {e}')

1.5 完整的脚本示例

import os
# 指定要重命名文件的目录
directory = 'path_to_directory'
# 列出目录中的所有文件
files = os.listdir(directory)
# 遍历文件列表并进行重命名
for file in files:
    if os.path.isfile(os.path.join(directory, file)):
        # 设定新的文件名
        new_filename = 'new_name'
        
        # 重命名文件
        try:
            os.rename(
                os.path.join(directory, file),
                os.path.join(directory, new_filename)
            )
            print(f'Renamed {file} to {new_filename}')
        except OSError as e:
            print(f'Error renaming {file}: {e}')

1.6 注意安全性和效率

在批量重命名文件时,应确保:

  • 不要同时进行多个重命名操作,以避免潜在的竞争条件。

  • 确保目标目录存在,避免在重命名时创建不存在的目录。

  • 考虑到操作系统对文件重命名的限制,例如在 Windows 中,文件名不能超过 255 个字符,而在 Unix/Linux 中则没有这个限制。

1.7 高级用法

对于更复杂的重命名任务,您可以使用正则表达式或者其他文本处理方法来生成新的文件名。

import os
import re
# 指定目录
directory = 'path_to_directory'
# 列出目录中的所有文件
files = os.listdir(directory)
# 遍历文件列表并进行重命名
for file in files:
    if os.path.isfile(os.path.join(directory, file)):
        # 使用正则表达式匹配文件名模式,并替换为新的模式
        new_filename = re.sub(r'\d+', 'new_prefix', file)
        
        # 重命名文件
        try:
            os.rename(
                os.path.join(directory, file),
                os.path.join(directory, new_filename)
            )
            print(f'Renamed {file} to {new_filename}')
        except OSError as e:
            print(f'Error renaming {file}: {e}')

这个脚本会将指定目录中所有以数字开头的文件重命名为新的前缀。

2. 删除文件

在Python中,删除文件是一个相对简单的操作。我们可以使用os库中的os.remove()函数来实现。以下是一个超详细的入门指南,介绍如何使用Python删除文件:

2.1 导入必要的库

首先,您需要导入Python的 os 库,它提供了许多与操作系统交互的函数。

import os

2.2 准备文件路径

要删除文件,您需要知道要删除的文件的路径。

file_path = 'path_to_file'

2.3 检查文件是否存在

在删除文件之前,最好检查该文件是否存在,以避免错误。

if os.path.isfile(file_path):
    print(f'File {file_path} exists, proceed to delete.')
else:
    print(f'File {file_path} does not exist, skip deletion.')

**2.4 执行删除操作

如果文件存在,您可以使用 os.remove() 函数来删除它。

try:
    os.remove(file_path)
    print(f'File {file_path} deleted successfully.')
except OSError as e:
    print(f'Error occurred: {e}')

2.5 完整的脚本示例

import os
# 指定要删除的文件的目录
file_path = 'path_to_file'
# 检查文件是否存在
if os.path.isfile(file_path):
    print(f'File {file_path} exists, proceed to delete.')
else:
    print(f'File {file_path} does not exist, skip deletion.')
# 执行删除操作
try:
    os.remove(file_path)
    print(f'File {file_path} deleted successfully.')
except OSError as e:
    print(f'Error occurred: {e}') 

2.6 注意安全性和效率

在批量删除文件时,应确保:

  • 不要同时进行多个删除操作,以避免潜在的竞争条件。

  • 确保目标目录存在,避免在删除时创建不存在的目录。

  • 考虑到操作系统对文件删除的操作限制,例如在 Windows 中,文件名不能超过 255 个字符,而在 Unix/Linux 中则没有这个限制。

通过以上步骤,您应该能够掌握如何使用Python删除文件。

3. 创建文件

在Python中,创建文件是一个相对简单的操作。我们可以使用 os 库中的 os.open() 函数或者 with 语句来创建文件。以下是一个超详细的入门指南,介绍如何使用Python创建文件:

3.1 导入必要的库

首先,您需要导入Python的 os 库,它提供了许多与操作系统交互的函数。

import os   

3.2 准备文件路径

要创建文件,您需要知道要创建的文件的路径。

file_path = 'path_to_file'   

3.3 检查文件路径是否存在

在创建文件之前,最好检查该文件路径是否存在,以避免覆盖其他文件。

if not os.path.exists(file_path):
    print(f'File path {file_path} does not exist, proceed to create.')
else:
    print(f'File path {file_path} already exists, skip creation.')  

3.4 执行创建操作

如果文件路径不存在,您可以使用 os.open() 函数来创建文件。

try:
    with open(file_path, 'w') as f:
        print(f'File {file_path} created successfully.')
except IOError as e:
    print(f'Error occurred: {e}')

这里,我们使用 with 语句来确保文件在操作完成后会被正确关闭。'w' 参数表示以写入模式打开文件,如果文件不存在,会创建一个新文件。

3.5 完整的脚本示例

import os
# 指定要创建的文件的目录
file_path = 'path_to_file'
# 检查文件路径是否存在
if not os.path.exists(file_path):
    print(f'File path {file_path} does not exist, proceed to create.')
else:
    print(f'File path {file_path} already exists, skip creation.')
# 执行创建操作
try:
    with open(file_path, 'w') as f:
        print(f'File {file_path} created successfully.')
except IOError as e:
    print(f'Error occurred: {e}')

3.6 注意安全性和效率

在创建文件时,应确保:

  • 拥有创建文件的足够权限。

  • 避免在内存不足的情况下创建大型文件。
    通过以上步骤,您应该能够掌握如何使用Python创建文件。

4. 获取当前目录

在Python中,我们可以使用 os 库中的 os.getcwd() 函数来获取当前目录的路径。以下是一个示例:

import os
current_directory = os.getcwd()
print(f'Current directory is: {current_directory}')

这将会打印出当前Python脚本所在目录的路径。

四、示例

1. 目录.txt自动清洗

1.1 需要在二级标题所在行最前面空4个格子,一级标题不用

1.2 需要在章和节字的后面加上一个空格

1.3 需要在页码前面加上=>符号

# 获取桌面路径
import os
import re

desktop_path = os.path.join(os.path.expanduser("~"), "Desktop")

# 目标文件路径
file_path = os.path.join(desktop_path, "目录.txt")

# 打开文件并读取内容
with open(file_path, 'r', encoding='utf-8') as file:
    lines = file.readlines()

modified_lines = []
for line in lines:
    # 去除空格
    line = line.replace(" ", "")
    if len(line) == 1:
        continue
    # 使用正则表达式在'章'或'节'后面添加一个空格,仅在后面没有空格的情况下
    line = re.sub(r'(章|节)(?![ ])', r'\1 ', line)
    # 在小数点后添加空格
    line = re.sub(r'(\.\d)', r'\1 ', line)
    if '章' not in line:
        # 二级标题添加4个空格
        line = ' ' * 4 + line
    # 匹配并去除最外层的英文括号
    pattern_en = r'\(([\d\s]+)\)'
    line = re.sub(pattern_en, r'\1', line)
    # 匹配并去除最外层的中文括号及其内部内容(包括除数字和空格以外的字符)
    pattern = r'(([^)]+))'
    line = re.sub(pattern, r'\1', line)
    # 确保每行只有一个 =>
    if '=>' not in line:
        # 在页码数字前添加 =>(只在行尾)
        line = re.sub(r'(\d+)$', r'=>\1', line)
    # 去除中文汉字和'=>整体符号左边的冗余符号
    pattern = r'([\u4e00-\u9fff]+)[^\w\s]+=>'
    line = re.sub(pattern, r'\1=>', line)
    modified_lines.append(line)
# 将修改后的内容写回文件
with open(file_path, 'w', encoding='utf-8') as file:
    file.writelines(modified_lines)

# 读取文件内容
with open(file_path, 'r', encoding='utf-8') as file:
    content = file.read()
    print(content)

2. 批量修改文件夹下的文件命名

你可以使用 Python 的 os 模块来实现对文件名的批量修改,结合字符串操作来确保文件名中的规定格式。以下是一个示例代码:

import os

# 指定目录路径
directory_path = r'目标文件夹绝对路径'

# 获取目录下所有文件名
files = os.listdir(directory_path)

# 遍历文件
for file_name in files:
    # 构建完整的文件路径
    file_path = os.path.join(directory_path, file_name)

    # 检查文件是否是图片文件,并且文件名中包含下划线
    if file_name.lower().endswith(('.png', '.jpg', '.jpeg', '.gif')) and '_' in file_name:
        # 分割文件名,以下划线为界
        parts = file_name.split('_')

        # 确保分割后的第一部分为'00159231127'
        if parts[0] != '00159231127':
            # 构建新文件名
            new_file_name = '00159231127' + '_' + '_'.join(parts[1:])

            # 构建新文件路径
            new_file_path = os.path.join(directory_path, new_file_name)

            # 重命名文件
            os.rename(file_path, new_file_path)
            print(f'Renamed: {file_name} -> {new_file_name}')

在上述代码中:

1.使用 os.listdir 获取目录下的所有文件名,然后遍历这些文件名。
2.通过 os.path.join 构建完整的文件路径,确保路径的正确性。
3.检查文件是否是图片文件(以 .png, .jpg, .jpeg, .gif 结尾的文件),并且文件名中包含下划线。
4.使用 split('_') 分割文件名,确保分割后的第一部分为'00159231127'。
5.构建新文件名,并使用 os.rename 来重命名文件。

在运行前,请确保备份文件或者在测试环境中运行,以免意外损坏文件。

3. 检测同级目录下是否存在同名文件夹

检测 目标路径 下的文件夹命名前5位是否存在一样的,如果一样打印出来

你可以使用 Python 来检查指定目录下的文件夹,查找前5位命名相同的文件夹。以下是一个示例代码:

import os

# 指定目录路径
directory_path = r'目标路径'

# 获取目录下所有文件夹名
folders = [folder for folder in os.listdir(directory_path) if os.path.isdir(os.path.join(directory_path, folder))]

# 创建一个空字典,用于存储前5位相同的文件夹名
same_prefix_folders = {}

# 遍历文件夹
for folder in folders:
    # 获取前5位文件夹名
    prefix = folder[:5]

    # 检查前5位文件夹名是否已经在字典中
    if prefix in same_prefix_folders:
        # 将文件夹名添加到对应的键值中
        same_prefix_folders[prefix].append(folder)
    else:
        # 若字典中没有该前5位文件夹名,则创建键值对
        same_prefix_folders[prefix] = [folder]

# 输出前5位相同的文件夹名
for prefix, folders in same_prefix_folders.items():
    if len(folders) > 1:
        print(f"前5位为 '{prefix}' 的文件夹有以下重复命名:")
        print(', '.join(folders)) 

这段代码执行以下操作:

1.使用 os.listdir 获取指定目录下的所有文件夹名。
2.然后遍历这些文件夹名,提取前 5 位名称,并将具有相同前缀的文件夹放入一个字典中。
3.最后打印出前 5 位相同的文件夹名。Python超详细基础文件操作(详解版)

Python文件处理 应用程序运行过程中产生的数据最先都是存放于内存中的,若想永久保存下来,必须要保存于硬盘中。应用程序若想操作硬件必须通过操作系统,而文件就是操作系统提供给应用程序来操作硬盘的虚拟概念,用户或应用程序对文件的操作,就是向操作系统发起调用,然后由操作系统完成对硬盘的具体操作。 阅读详情

相关推荐

Python中对基本文件操作

Python 模块(Module),是一个Python文件,以.py 结尾,包含了Python 对象定义和Python语句。如果用open打开文件时,如果使用的"r",那么可以省略,即只写open(‘test.txt’)变量=对象.readlines() ------>全部读取,输出以列表格式。f=open(‘文件’,‘w’)或者f=open(‘文件’,‘r’)变量=对象.readline() ------->只读第一行。变量 = 对象.read() ------>全部读取。

工宗浩生财指南针 3098

Python文件操作-常用

本文记录Python关于文件相关的操作。

阳光欢子的博客 5687

python中最基础的文件操作,你都懂吗?

今天讲一下python中的文件操作,虽然在开发中我们很少操作文件,大部分的需求基本上是在数据库中完成,因为数据库的数据更安全,操作效率高,操作文件就面临着我们需要自己管理文件,但是我们平常测试或者做一些小的demo的时候需要读取数据,有时候我们做一些办公自动化,读取word,Excel,txt 什么的还是很方便的,并且文件的读写也是基本的技能,必须要学习下,总结下更好记忆。对于常用的api 我都打上了小心心,记住就好了 1、打开文件 api 很简单,只要使用open 就可以了 with open(

我是香菜 1万+

python的文件操作和异常处理

文件的作用 使用文件的目的:保存数据存放在磁盘 把一些存储存放起来,可以让程序下一次执行的时候直接使用,而不必重新制作一份,省时省力 文件的打开与关闭 思考:如果想用word编写一份简历,应该有哪些流程呢? 步骤:新建--写入数据--关闭 打开word软件,新建一个word文件 写入个人简历信息 保存文件 关闭word软件 结论 打开文件,或者新建立一个文件 读/写数据 关闭文件 :打开文件 在python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件open(文件名,

liulongdeboke的博客 1066

VINS-Mono 代码详细解读——IMU预积分的残差、Jacobian和协方差 processIMU()+intergrationBase类+imu_factor.h

IMU离散中值预积分 1.1、IMU模型 测量值:加速度计a^、陀螺仪w^, 加上了bias游走和随机白噪声。 真实值:加速度计a、陀螺仪w。 实际情况下,可以获得测量值a^和w^,需要反推真实值。一般忽略随机游走高斯噪声n w=w^-bg; a=qwb(a^-ba)-gw; 1.2、连续时间IMU运动模型,积分 PVQ(两帧之间) 将第k帧和第k+1帧所有的IMU进行积...

try_again_later的博客 9266

STM32_USB复合设备开发实战:基于CubeMX插件简化HID与CDC集成

本文详细介绍了如何使用STM32CubeMX插件简化USB复合设备开发,特别是HID与CDC的集成。通过自动处理多设备描述符融合和端点资源分配,该插件显著降低了开发复杂度,帮助工程师快速实现键盘、鼠标和虚拟串口等复合功能,提升STM32 USB开发效率。

palm99的专栏 750

python文件操作(一看就懂)

上面我们费了这么多的篇幅来讲字符编码,最终只需要记住一个结论就行了:遇见乱码就加文件头,用python3加文件头直接加,用python2加文件头前面先加一个小写u。到底什么是文件呢?我们常说计算机有三层体系结构:最下层是是硬件,硬件之上就是操作系统,最上层就是用户和应用程序。用户和应用程序如果想操作硬件就必须通过操作系统,比如用户或者应用程序想要操作硬盘这个硬件就得操作操作系统,而操作系统提供了一种虚拟的概念,那就是文件,或者叫做操作系统提供的操作硬盘功能。..................

生产队的刘同学 1万+

声音编程(Voice Coding) Talon(一) 基本介绍与安装使用

语音编程平台简介 语音编程工具有哪些:Talon是一款声音编程平台,它追求的意义在于完全取代键盘和鼠标。。当前,全球有两个领先的语音编程平台(Programming-By-Speech Platforms)。一是Serenade,它的作用有点像数字助手,可以让你描述正在编程的命令,而不要求你必须逐字逐句地口述每条指令。另一个就是Talon,它提供了对每一行代码更精细的控制,这也意味着你需要对每一个被编入机器的任务有更细致的把握。具体的差别可以参考文章末尾的Serenade 和 Talon编程的例子。 除了这

yinglang19941010的专栏 4139

python超详细基础文件操作【建议收藏】

1 文件操作 1.1 文件打开与关闭 1.1.1 打开文件 1.1.2 关闭文件 1.2 访问模式及说明 2 文件读写 2.1 写数据(write) 2.2 读数据(read) 2.3 读数据(readlines) 2.3 读数据(readline) 2.4 readlines 和 readline的区别 3 文件的相关操作 3.1 文件重命名 3.2 删除文件 3.3 创建文件

HHX_01的博客 4万+

MoveIt控制睿尔曼RM65机械臂:从仿真到实机的3种控制模式对比

本文详细解析了使用MoveIt框架控制睿尔曼RM65机械臂的三种核心模式:拖动规划、目标姿态规划和Python API控制,从Gazebo仿真到实机部署的完整实现路径。通过ROS环境配置、控制参数优化及实机过渡技术,为工业自动化和机器人研究提供实用指南。

727

STM32F407用FSMC+DMA驱动LVGL,3.5寸屏流畅度翻倍实战(附CubeMX配置避坑)

本文详细介绍了如何在STM32F407上通过FSMC+DMA驱动LVGL,显著提升3.5寸屏的显示流畅度。从FSMC与DMA的配置原理到LVGL驱动层适配,提供了完整的优化方案和实测数据,帮助开发者解决界面卡顿问题,实现流畅度翻倍的效果。

weixin_30872499的博客 559

Python 超详细基础文件操作指南

Python 文件操作简单易用,但也提供了强大的功能,可以进行各种文件和目录的操作。熟练掌握这些操作将帮助你高效地进行数据处理、日志记录、文件管理等任务。通过本文提供的示例代码,你可以轻松上手并应用于实际开发中。打开、读取、写入文件的基本方法。文件指针的控制(seek()tell()文件删除、重命名、目录操作。异常处理以保证文件操作的安全性。通过理解和掌握这些基础文件操作,你将能够更好地在 Python 中处理文件和数据,进行更高效的编程。

小蜗牛的珍贵百宝箱 1019

EndNote X9 参考文献附录列表 格式调整

EndNote X9 插入参考文献常见问题总结

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 2570

python基础-文件操作详解

Python文件操作详解 本文介绍了Python中文件操作的基础知识,主要包括: 文件类型:文本文件(如.txt、.py)和二进制文件(如.jpg、.mp3) 基本操作流程:打开文件(open())→操作文件(read/write)→关闭文件(close()) 文件模式:r(只读)、w(写入)、a(追加)等常用模式及其组合 编码处理:演示了UTF-8和GBK编码文件的读写操作 读取方法:read()读取全部内容、read(size)读取指定大小、readline()逐行读取、readlines()读取为列表

猿榜编程的博客 694

用 MVC 框架把 ABAP 报表写成可扩展的应用(2)

本文介绍了一个基于MVC架构的SAP报表模板,解决了传统ABAP报表开发中的三个核心痛点: 选择屏幕校验逻辑分散问题 - 通过统一的选择屏幕控制器集中管理校验逻辑 在线与后台输出不一致问题 - 共享同一数据模型,通过不同控制器实现多样化展示 屏幕流转管理混乱问题 - 主控制器统一管理所有屏幕流程和事件 该模板采用分层架构: Model层专注数据获取和业务规则 Controller层管理流程和交互 View层负责展示逻辑 特别适用于需要同时支持交互式ALV展示和后台批处理输出的报表场景,通过标准化的扩展点设计

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 78

数仓建模—数据治理框架选型

全名主要亮点覆盖面最广:从数据治理、架构、质量、安全到元数据、主数据、数据仓库等等,几乎所有数据管理主题都能在DMBOK里找到相应章节。概念权威统一:帮助组织建立通用术语和知识基础,减少“部门之间说法不一致”的沟通成本。适用场景:如果你所在公司(或团队)正准备系统梳理数据管理的方方面面,DMBOK是一份非常全面的指导手册,尤其适合培养新人或为整个组织统一认知。需要注意:DMBOK偏“知识指引”,不直接提供成熟度模型或实施路线图。想要落地,还需要结合其他评估模型或项目管理方法。小案例举例:某。

2401_84052244的博客 4743

超详细的 Python 文件操作知识!

注意:如果在读写模式下,先写后读,那么文件就会出问题,因为默认光标是在文件的最开始,你要是先写,则写入的内容会将原内容覆盖掉,直到覆盖到你写完的内容,然后在从后面开始读取。Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。不写参数,默认的编码本是操作系统默认的编码本。观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

xiangxueerfei的博客 2651

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

超详细的Python文件操作知识

【导语】:python进行文件操作,在日常编程中是很常用的。为了方便大家,这里对各种文件操作的知识进行汇总。一文在手,无须它求!来一起学习吧。 — 以下是正文 — 本文分七个模块为大家详细介绍python中文件操纵相关知识,闲话少说,让我们开始! 一、文件的打开和关闭 open()函数 f1 = open(r'd:\测试文件.txt', mode='r', encoding='utf-8') content = f1.read() print(content) f1.close() with open(r

python2021_的博客 1161

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Python之文件操作详解

Python文件操作 Python文件操作示例

weixin_42771366的博客 3370

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

上一篇: Star 8.3k!强烈推荐这款强大的 PDF 文件处理工具,PDF处理它全包了!
下一篇: 推荐5款 使用率超高 的开源项目
孜孜孜孜不倦
博客等级 码龄7年 1803粉丝 277原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孜孜孜孜不倦

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值