Hướng dẫn python save file in subdirectory - python lưu tệp trong thư mục con

Bạn chỉ cho chúng tôi thấy một phần mã của bạn không có ích, với điều đó đã viết cho một thư mục con rất đơn giản nhưng trước tiên đòi hỏi phải tạo ra một. Hiện tại, tôi chỉ có thể cung cấp cho bạn một vài ví dụ cơ bản vì tôi không biết phần còn lại của mã của bạn trông như thế nào, hy vọng điều gì đó ở đây sẽ giúp!

def create_folder[self, path]:
        try:
            if os.path.isdir[path]:
                print["Error: The directory you're attempting to create already exists"] # or just pass
            else:
                os.makedirs[path]
        except IOError as exception:
            raise IOError['%s: %s' % [path, exception.strerror]]
        return None

hoặc thậm chí dễ dàng hơn

os.makedirs["C:\\Example Folder\\"]

hoặc trong trường hợp của Linux

os.makedirs['/home/' + os.getlogin[] + '/Example Folder/']

Sau đó, chỉ cần viết cho nó giống như bạn thường, vì chỉ cung cấp đường dẫn đến thư mục con.

def write[self, path, text]:
        try:
            if os.path.isfile[path]:
                return None # or print and error, or pass etc...
            else:
                with open[path, 'w'] as outFile:
                    outFile.write[text]
        except IOError as exception:
            raise IOError["%s: %s" % [path, exception.strerror]]

        return None

Trong trường hợp này, bạn sẽ đặt đường dẫn đến thư mục con của mình trong tham số "đường dẫn" và biến chứa văn bản trong tham số "văn bản". Bạn có thể sửa đổi chức năng này để nối, viết byte, v.v.

Thông tin cập nhật giải quyết ý kiến ​​của bạn

Một cách thực sự đơn giản để tạo ra các chương trình python quy mô nhỏ "nhiều hơn" nền tảng chéo là chỉ làm một cái gì đó như

if sys.platform == 'win32':
    print['This is windows']
elif sys.platform == 'linux2':
    print['This is some form of linux']

Bạn có thể thêm nó để kiểm tra hệ điều hành và sau đó chạy các khối của bạn dựa trên hệ điều hành :]

Có, bạn chính xác là chức năng ghi ở trên không ghi đè lên các tệp, bạn có thể nối các tệp [thêm văn bản mới mà không ghi đè lên văn bản hiện có] bằng cách thay đổi 'W' cờ thành 'A' như vậy

def append[self, path, text]:
        try:
            if os.path.isfile[path]:
                with open[path, 'a'] as outFile:
                    outFile.write[text]
        except IOError as exception:
            raise IOError['%s: %s' % [path, exception.strerror]]
        return None    

Cập nhật thêm:

Bạn có thể xóa "Tự" nếu bạn không làm việc với các lớp.

Dựa trên nhận xét cuối cùng của bạn, đó là "Tôi tự đặt gì", tôi thực sự khuyên bạn nên từ bỏ dự án của mình tạm thời và trước tiên tìm hiểu những điều cơ bản của Python ... bạn có thể tìm thấy các hướng dẫn ở khắp bao gồm ở những nơi sau.

//www.tutorialspoint.com/python/

//docs.python.org/3/tutorial/

Nếu bạn đang sử dụng một phiên bản cũ hơn, bạn có thể chỉ cần thay đổi bất kỳ cái nào bạn đang sử dụng trên trang web chính thức, tôi chúc bạn may mắn nhất nhưng thật không may, tôi không thể giúp bạn thêm mà không biết ít nhất là những điều cơ bản, tôi 'Tôi xin lỗi!

Cập nhật: Điều này sẽ đến sau một thời gian dài nhưng tôi cảm thấy bắt buộc phải thêm những thứ này vào câu trả lời vì bài đăng này gần đây đã được xem lại.

os.mkdir['\path\to\dir']
# is also valid
# Python 3+ use the following 
if sys.platform.startswith['linux']:
    print['This is linux']
    #insert code here. We use .startswith['']
    #becuase the version number was depricated 
elif sys.platform.startswith['win']:
    print['This is windows'] 

Ngôn ngữ lập trình Python đóng vai trò là ngôn ngữ kịch bản phù hợp cho các nhiệm vụ lập trình nhanh. Nó dễ tiếp cận hơn với các chủ doanh nghiệp nhỏ và những người khác là lập trình viên bình thường hơn các ngôn ngữ lập trình phức tạp khác. Một phần của tính linh hoạt này xuất phát từ các bộ mô-đun tích hợp của nó mang lại một hộp công cụ mạnh mẽ về các hoạt động và cấu trúc dữ liệu. Mô -đun HĐH, đặc biệt, giúp các lập trình viên Python tương tác với hệ thống. Bằng cách này, việc tạo các tệp và thư mục trở thành vấn đề kêu gọi các phương thức tích hợp có trong chính ngôn ngữ Python.

Thư viện OS Python

Ngôn ngữ lập trình Python là một ngôn ngữ được giải thích, có nghĩa là mã nguồn Python chạy qua một trung gian phần mềm trong quá trình thực hiện. Do đó, hầu hết mã Python không có quyền truy cập trực tiếp vào hệ điều hành hoặc các lệnh của nó. Tuy nhiên, bằng cách sử dụng mô-đun HĐH và các chức năng tích hợp của nó, các lập trình viên có thể thực hiện các cuộc gọi trực tiếp đến các lệnh của hệ điều hành máy chủ để thực hiện các tác vụ như tìm kiếm và tạo thư mục.

Có Python nhập mô -đun HĐH bằng cách bao gồm dòng "Nhập hệ điều hành" khi bắt đầu mã Python của bạn. Điều này sẽ hoạt động trong cả Python 2 và Python 3, các phiên bản chính của ngôn ngữ lập trình được sử dụng ngày nay.

Nói chung, bạn có thể nhập nhiều mô -đun chuyên dụng vào Python cho các nhiệm vụ cụ thể. Bạn có thể tìm kiếm thông qua PIP, một công cụ để cài đặt các mô -đun Python, cho các công cụ cho các tác vụ khác nhau nếu không có một trong thư viện tiêu chuẩn đi kèm với Python khi bạn cài đặt nó.

Có python tạo một thư mục

Một phần của mô -đun HĐH bao gồm một hàm để tạo các thư mục trên hệ thống. Bằng cách nhập mô -đun HĐH vào chương trình Python, các lập trình viên sau đó có thể gọi hàm Python MKDIR để tạo các thư mục trong hệ thống. Các lập trình viên sau đó có thể điều hướng đến thư mục đó, lưu tệp vào thư mục hoặc tạo các thư mục khác trong thư mục đó. Ví dụ sau đây minh họa cách sử dụng chức năng MKDIR trong Python:

>>> Nhập OS

Điều này sẽ hoạt động trong tất cả các hệ điều hành hiện đại, bao gồm Microsoft Windows, Apple MacOS cũng như bất kỳ hương vị hiện đại nào của Linux hoặc hệ thống Unix khác. MKDIR tự nhiên là viết tắt của "MAKE MALITORY", vì nó bảo Python tạo một thư mục, một thuật ngữ thường được sử dụng thay thế cho thư mục.

Tạo các thư mục con trong Python

Hàm MKDIR cũng có thể tạo các thư mục con bên trong các thư mục. Có hai cảnh báo quan trọng cho điều này, tuy nhiên. Đầu tiên là chức năng MKDIR chỉ có thể tạo một thư mục tại một thời điểm. Thứ hai là hàm MKDIR chỉ tạo ra các thư mục bên trong các thư mục đã tồn tại. Vì vậy, để tạo một thư mục con của thư mục xin chào, trước tiên lập trình viên phải tạo thư mục xin chào và sau đó tạo thư mục con bên trong nó:

>>> nhập hệ điều hành >>> os.mkdir ['xin chào'] >>> os.mkdir ['xin chào/hi']]

Tạo ra các thư mục con

Để tạo ra hệ thống phân cấp sâu của các thư mục khi đang bay, các lập trình viên nên sử dụng hàm makedirs của mô -đun HĐH. Các makedirs và chức năng loại bỏ đối tác của nó, chức năng removeDIRS, tạo các thư mục đệ quy để tạo các thư mục con lồng nhau tự động. Vì vậy, trong khi chức năng MKDIR chỉ có thể hoạt động trong các thư mục hiện có, các lập trình viên có thể xác định một hệ thống phân cấp thư mục cho hàm makedirs để tạo nhiều thư mục được lồng trong số khác:

>>> nhập hệ điều hành >>> os.makedirs ['/hey/hi/hell

Nếu một số thư mục đã tồn tại, Python sẽ tạo ra những thư mục không.

Tạo tệp trong thư mục

Nếu bạn muốn có Python tạo một tệp trong một thư mục con, chỉ cần mở nó ở chế độ ghi của Python.

Bạn có thể làm điều này với dòng

>>> f = tệp ["đường dẫn/đến/file", "w"]

trong đó "W" chỉ ra chế độ ghi. Nếu bạn muốn, bạn cũng có thể viết cho nó bằng cách nói

>>> f.write ['Đây là một số văn bản']

Bạn phải có quyền truy cập vào thư mục nơi bạn muốn tạo bất kỳ tệp nào, bao gồm cả thư mục con. Bạn sẽ nhận được một lỗi từ Python nếu bạn không.

Bài Viết Liên Quan

Chủ Đề