Làm cách nào để tạo một tệp bằng Python?

Một tác vụ tự động hóa rất phổ biến mà chúng tôi giải quyết bằng Python là tạo các tệp văn bản cũng như đọc, ghi và lưu dữ liệu vào các tệp đó

Dung dịch

Python cung cấp các hàm tích hợp rất mạnh mẽ để tạo và thao tác với các tệp văn bản. Trong hướng dẫn ngắn này, chúng ta sẽ đi qua một số khả năng chính

  • Tạo một tệp văn bản mới từ đầu trong thư mục hiện tại
  • Tạo một tệp văn bản mới trong một thư mục khác
  • Thêm văn bản vào tệp văn bản hiện có
  • Viết từng dòng văn bản vào một tệp

Hãy xem xét một vài ví dụ

Tạo một tệp bằng Python với open

Để tạo tệp văn bản trong Python, chúng tôi thường sử dụng khối With và hàm open[“filename”, “accessmode”]. Đoạn mã dưới đây sẽ tạo một tệp có tên 'mydocument. txt’ với quyền truy cập ghi. Tệp này sẽ được tạo trong thư mục lưu tập lệnh Python của bạn

Mã số

with open["mydocument.txt", mode = "w"] as f:
    f.write["This text is written with Python"]

Ghi chú. khi mở tệp ở chế độ Ghi ['w'], nội dung tệp hiện tại sẽ bị cắt bớt. Sử dụng chế độ này cẩn thận

Tạo một tệp trong một đường dẫn thư mục khác

Để tạo một tệp theo một đường dẫn khác với thư mục làm việc của chúng tôi, chúng tôi sẽ phải thực hiện một thay đổi nhỏ trong cách chúng tôi gọi hàm mở

Trước tiên, chúng tôi sẽ đảm bảo rằng đường dẫn thư mục tệp có sẵn trong hệ điều hành của bạn. Sau đó, chúng tôi sẽ sử dụng ngữ cảnh With để mở tệp ở chế độ truy cập Ghi và nối một chuỗi vào tệp. Hãy xem đoạn trích – Lưu ý cách sử dụng thư viện pathlib [có sẵn từ Python 3. 4] giúp đơn giản hóa việc xử lý đối tượng tệp trong Python

Mã số

from pathlib import Path

# replace with your preferred directory path
dir_path = Path['C:\Temp']
file_name = "mydocument.txt"
file_path = dir_path.joinpath[file_name]

# check that directory exists
if dir_path.is_dir[]:
    with open[file_path, "w"] as f:
        f.write["This text is written with Python."]
        print['File was created.']
else:
    print["Directory doesn\'t exist."]

Một triển khai tương tự bằng cách sử dụng mô-đun os thư viện tiêu chuẩn Python [cũng có sẵn trước Python 3. 4]

import os

# replace with your preferred directory and file path
dir_path = r"C:\Temp"
file_name = "mydocument.txt"
file_path = os.path.join[dir_path, file_name]
# check if the directory exists
if os.path.exists [dir_path]:
    # create the file
    with open[file_path, "w"] as f:
        f.write["This text is written with Python."]
        print['File was created.']
else:
    print["Directory doesn\'t exist."]

Tạo tệp nếu không tồn tại với Python

Dưới đây là phiên bản mã mạnh mẽ hơn một chút, trong đó trước tiên chúng tôi sẽ kiểm tra xem đường dẫn thư mục và tệp có tồn tại hay không trước khi đọc và ghi vào tệp

from pathlib import Path

dir_path = Path['C:\Temp']
file_name = 'mydocument.txt'
file_path = dir_path.joinpath[file_name]

# check if directory exists
if dir_path.is_dir[]:

    # check if file already exists
    if file_path.is_file[]:
        print['File already exists.']
    else:
        with open [dir_path.joinpath[file_name],'w'] as f:  
            f.write["This text is written with Python."]
            print['File was created.']
else:
    print['Directory doesn\'t exist, please create the directory first.']

Nối văn bản vào một tệp hiện có

Như đã đề cập trước đó, các tệp chúng tôi đã tạo bằng “w” làm chế độ truy cập sẽ ghi đè lên tất cả nội dung tệp hiện có. Do đó, chúng tôi thường mở tệp ở chế độ chắp thêm [“a”]. Nối thêm sẽ chèn văn bản của bạn sau nội dung hiện có của tệp văn bản của bạn. Hãy xem nhanh

Mã số

#write and save

with open[r"C:\Temp\mydocument.txt", "w"] as f:
    f.write["This text is written with Python."]

#read

with open[r"C:\Temp\mydocument.txt", "r"] as f: 
   print["New text:\n",f.read[]]

#append

with open[r"C:\Temp\mydocument.txt", "a"] as f:
    f.write["\n This text was added using Append."]


#read the appended text

with open[r"C:\Temp\mydocument.txt", "r"] as f:
    print["Append:\n",f.read[]]

đầu ra

New text:
This text is written with Python.
Append:
This text is written with Python.
This text was added using Append.

Viết từng dòng tệp Python

Bây giờ, hãy giả sử rằng bạn có một danh sách Python mà bạn muốn ghi vào tệp theo từng dòng

Phương thức writelines[] của đối tượng tệp mong đợi một lần lặp [chẳng hạn như danh sách của chúng tôi]. Tuy nhiên, khi được gọi writelines[] sẽ nối các phần tử danh sách và ghi chúng vào tệp. Nếu bạn cần viết từng dòng một, bạn có thể lặp qua các thành phần danh sách, nối thêm ký tự thoát \n cho từng thành phần và ghi chúng vào tệp như minh họa trong đoạn trích bên dưới

Trong hướng dẫn ngắn này, chúng ta tìm hiểu cách sử dụng Python để tạo tệp. Chúng tôi cũng xem xét các phương pháp xử lý ghi, đọc và nối thêm tệp

Mục lục - Python Tạo tệp

  • Tại sao nên sử dụng Python để tạo tệp?
  • Cách tạo tệp trong Python
  • Phương pháp xử lý tệp
  • Suy nghĩ kết thúc - Python Tạo tệp

Tại sao nên sử dụng Python để tạo tệp?

Giống như hầu hết các ngôn ngữ lập trình, Python cũng hỗ trợ xử lý tệp. Tuy nhiên, vì Python coi tệp là văn bản hoặc tệp nhị phân nên việc xử lý tệp dễ dàng hơn nhiều. Các phương pháp xử lý tệp được sử dụng nhiều nhất là tạo, đọc và ghi tệp

Trong hướng dẫn này, chúng tôi chủ yếu tập trung vào cách sử dụng Python để tạo tệp vì đây là bước đầu tiên để xử lý tệp. Tuy nhiên, chúng tôi giới thiệu cho bạn cách bạn có thể đọc và ghi tệp

Cách tạo tệp trong Python

Để tạo một tệp trong Python, chúng tôi sử dụng hàm

from pathlib import Path

# replace with your preferred directory path
dir_path = Path['C:\Temp']
file_name = "mydocument.txt"
file_path = dir_path.joinpath[file_name]

# check that directory exists
if dir_path.is_dir[]:
    with open[file_path, "w"] as f:
        f.write["This text is written with Python."]
        print['File was created.']
else:
    print["Directory doesn\'t exist."]
3 có sẵn. Có các phương pháp khác sử dụng mô-đun HĐH trong Python, tuy nhiên, một số phương pháp sẽ yêu cầu quyền root. Do đó để chuẩn hóa hướng dẫn này, tôi chỉ sử dụng phương pháp
from pathlib import Path

# replace with your preferred directory path
dir_path = Path['C:\Temp']
file_name = "mydocument.txt"
file_path = dir_path.joinpath[file_name]

# check that directory exists
if dir_path.is_dir[]:
    with open[file_path, "w"] as f:
        f.write["This text is written with Python."]
        print['File was created.']
else:
    print["Directory doesn\'t exist."]
3

Cú pháp mở[]

open[file, access mode]

Thông số

Các phương thức
from pathlib import Path

# replace with your preferred directory path
dir_path = Path['C:\Temp']
file_name = "mydocument.txt"
file_path = dir_path.joinpath[file_name]

# check that directory exists
if dir_path.is_dir[]:
    with open[file_path, "w"] as f:
        f.write["This text is written with Python."]
        print['File was created.']
else:
    print["Directory doesn\'t exist."]
3 yêu cầu hai tham số,
  • from pathlib import Path
    
    # replace with your preferred directory path
    dir_path = Path['C:\Temp']
    file_name = "mydocument.txt"
    file_path = dir_path.joinpath[file_name]
    
    # check that directory exists
    if dir_path.is_dir[]:
        with open[file_path, "w"] as f:
            f.write["This text is written with Python."]
            print['File was created.']
    else:
        print["Directory doesn\'t exist."]
    6 - Bắt buộc, tên hoặc đường dẫn của tệp
  • f = open["myfirstfile.txt", "x"]
    
    0 - Chi phối loại hoạt động mà bạn sẽ thực hiện

Vì chúng tôi đang cố gắng tạo một tệp nên chế độ truy cập mà chúng tôi sẽ sử dụng là

f = open["myfirstfile.txt", "x"]
1. Tôi đã thêm danh sách tất cả các chế độ truy cập bên dưới

Mã & Giải thích

f = open["myfirstfile.txt", "x"]

Trong đoạn mã trên, chúng tôi đã sử dụng

from pathlib import Path

# replace with your preferred directory path
dir_path = Path['C:\Temp']
file_name = "mydocument.txt"
file_path = dir_path.joinpath[file_name]

# check that directory exists
if dir_path.is_dir[]:
    with open[file_path, "w"] as f:
        f.write["This text is written with Python."]
        print['File was created.']
else:
    print["Directory doesn\'t exist."]
3 để tạo tệp, vì chúng tôi không chỉ định đường dẫn, tệp được tạo trong cùng thư mục với tập lệnh

Trong trường hợp tệp đã tồn tại, Python trả về

f = open["myfirstfile.txt", "x"]
3. Hãy thử chạy cùng một mã hai lần và bạn sẽ nhận được lỗi này

Phương pháp xử lý tệp

Ngoài phương thức tạo, tôi muốn giới thiệu với bạn về các phương thức đọc, viết và nối thêm. Tôi đã thêm vào bên dưới danh sách tất cả các phương pháp cùng với chế độ truy cập của chúng.
  • Chỉ đọc ['r']. Phương pháp này được sử dụng để đọc một tập tin hiện có. Trong trường hợp tệp không tồn tại, một
    f = open["myfirstfile.txt", "x"]
    
    4 được trả về.
  • Đọc và Viết ['r+']. Phương pháp này được sử dụng để đọc và ghi một tệp và tương tự như Chỉ đọc, một
    f = open["myfirstfile.txt", "x"]
    
    4 được trả về nếu tệp không tồn tại
  • Chỉ ghi ['w']. Phương pháp này có thể được sử dụng để mở và ghi vào một tập tin. Trong trường hợp tệp không tồn tại, tệp được tạo. Và trong trường hợp đó, nội dung của tệp sẽ bị ghi đè
  • Nối ['a']. Phương pháp này được sử dụng để thêm nội dung vào một tập tin. Trình xử lý được định vị ở cuối tệp và do đó nội dung được ghi ở cuối tệp. Phương thức này cũng tạo một tệp trong trường hợp nó không tồn tại

Suy nghĩ kết thúc - Python Tạo tệp

Như bạn có thể nhận thấy, các phương thức ghi và nối thêm cũng có thể được sử dụng để tạo tệp. Tuy nhiên, tôi khuyên bạn nên tự làm quen với các phương thức tạo trước khi bắt đầu sử dụng các phương thức khác trong Python để tạo tệp

Điều này là do phương thức ghi đè lên dữ liệu hiện có. Mặc dù các phương thức chắp thêm không ghi đè lên dữ liệu nhưng cả hai phương thức này đều không thân thiện với người dùng khi tạo tệp. Do đó, hãy thực hành tạo tệp trước khi bạn bắt đầu sử dụng các phương pháp khác để thực hiện tương tự

Làm cách nào để tạo tệp txt trong Python?

Python tạo tệp văn bản .
'w' – mở tệp để viết. Nếu tệp không tồn tại, hàm open[] sẽ tạo một tệp mới. Nếu không, nó sẽ ghi đè lên nội dung của tệp hiện có
'x' – mở tệp để tạo độc quyền. Nếu tệp tồn tại, hàm open[] sẽ báo lỗi [ FileExistsError ]

Phương pháp nào được sử dụng để tạo tệp trong Python?

Cách tạo tệp trong Python. Để tạo một tệp trong Python, chúng tôi sử dụng hàm open[] tích hợp.

Làm thế nào để tạo một tập tin văn bản?

Có một số cách. .
Trình chỉnh sửa trong IDE của bạn sẽ hoạt động tốt. .
Notepad là một trình soạn thảo sẽ tạo các tệp văn bản. .
Có những trình soạn thảo khác cũng sẽ hoạt động. .
Microsoft Word CÓ THỂ tạo một tệp văn bản, nhưng bạn PHẢI lưu nó một cách chính xác. .
WordPad sẽ lưu một tệp văn bản, nhưng một lần nữa, loại mặc định là RTF [Rich Text]

Làm cách nào để tạo tệp trong Python bằng HĐH?

Chúng tôi chỉ có thể tạo tệp nếu tệp không có bằng hai cách sau. .
sử dụng hệ điều hành. con đường. chức năng tồn tại ["file_path"] để kiểm tra xem tệp có tồn tại không
Sử dụng chế độ truy cập x trong hàm open[] và xử lý ngoại lệ

Chủ Đề