Mở file với chế độ mode ‘ a ‘ có ý nghĩa gì? A. Mở file ở chế độ chỉ được phép đọc. B. Mở file ở chế độ ghi. C. Mở file chế độ ghi tiếp vào cuối file. D. Mở file để đọc và ghi. Hướng dẫn Chọn C là đáp án đúng 9/23/2009 1:27:36 PM
Nguyễn Bích Hợp · Nguyễn Bích Hợp 13:27 23/09/2009
Trong python built-in mở chức năng, sự khác biệt chính xác giữa các phương thức là gì w, a, w+, a+, và r+? Đặc biệt, tài liệu ngụ ý rằng tất cả những điều này sẽ cho phép ghi vào tệp và nói rằng nó mở tệp để "bổ sung", "viết" và "cập nhật" cụ thể, nhưng không xác định ý nghĩa của các thuật ngữ này.
696 hữu ích 3 bình luận 486k xem chia sẻ
answer
Nguyễn Minh Trung · Nguyễn Minh Trung 13:33 23/09/2009
Các chế độ mở là hoàn toàn giống như đối với các chức năng thư viện chuẩn C fopen(). Các BSD fopenmanpage định nghĩa chúng như sau: The argument mode points to a string beginning with one of the following sequences (Additional characters may follow these sequences.): ``r'' Open text file for reading. The stream is positioned at the beginning of the file. ``r+'' Open for reading and writing. The stream is positioned at the beginning of the file. ``w'' Truncate file to zero length or create text file for writing. The stream is positioned at the beginning of the file. ``w+'' Open for reading and writing. The file is created if it does not exist, otherwise it is truncated. The stream is positioned at the beginning of the file. ``a'' Open for writing. The file is created if it does not exist. The stream is positioned at the end of the file. Subsequent writes to the file will always end up at the then current end of file, irrespective of any intervening fseek(3) or similar. ``a+'' Open for reading and writing. The file is created if it does not exist. The stream is positioned at the end of the file. Subse- quent writes to the file will always end up at the then current end of file, irrespective of any intervening fseek(3) or similar.
827 hữu ích 5 bình luận chia sẻ answer
Tạ Thanh Phúc · Tạ Thanh Phúc 05:13 01/06/2015
Tôi nhận thấy rằng thỉnh thoảng tôi cần phải mở lại Google, chỉ để xây dựng một hình ảnh tinh thần về sự khác biệt cơ bản giữa các chế độ là gì. Vì vậy, tôi nghĩ rằng một sơ đồ sẽ được đọc nhanh hơn vào lần sau. Có thể ai đó khác cũng sẽ thấy điều đó hữu ích.
606 hữu ích 5 bình luận chia sẻ answer
Lý Hữu Tâm · Lý Hữu Tâm 06:26 19/06/2015
Cùng một thông tin, chỉ ở dạng bảng | r r+ w w+ a a+ ------------------|-------------------------- read | + + + + write | + + + + + write after seek | + + + create | + + + + truncate | + + position at start | + + + + position at end | + +nghĩa ở đâu: (chỉ để tránh mọi sự hiểu sai)
Lưu ý: avà a+luôn thêm vào cuối tệp - bỏ qua bất kỳ seekchuyển động nào .
241 hữu ích 5 bình luận chia sẻ answer
Đặng Kim Yến · Đặng Kim Yến 13:33 23/09/2009
Các tùy chọn tương tự như đối với hàm fopen trong thư viện chuẩn C: w cắt bớt tệp, ghi đè lên bất kỳ thứ gì đã có ở đó a gắn vào tệp, thêm vào bất cứ thứ gì đã có ở đó w+ mở để đọc và ghi, cắt bớt tệp nhưng cũng cho phép bạn đọc lại những gì đã được ghi vào tệp a+ mở ra để thêm vào và đọc, cho phép bạn vừa thêm vào tệp và cũng có thể đọc nội dung của nó
43 hữu ích 2 bình luận chia sẻ answer
Vũ Thanh Loan · Vũ Thanh Loan 01:51 05/01/2017
Tôi nghĩ điều này là quan trọng cần xem xét để thực hiện đa nền tảng, tức là như một CYA. :)
Này được trích dẫn trực tiếp từ Python Software Foundation 2.7.x .
10 hữu ích 0 bình luận chia sẻ answer
Phạm Phi Nhạn · Phạm Phi Nhạn 01:09 24/09/2014
Tôi đã đạt được điều này để cố gắng tìm ra lý do tại sao bạn sẽ sử dụng chế độ 'w +' so với 'w'. Cuối cùng, tôi chỉ làm một số thử nghiệm. Tôi không thấy có nhiều mục đích cho chế độ 'w +', vì trong cả hai trường hợp, tệp bị cắt bớt để bắt đầu. Tuy nhiên, với 'w +', bạn có thể đọc sau khi viết bằng cách tìm lại. Nếu bạn thử đọc bất kỳ cách đọc nào với 'w', nó sẽ xuất hiện IOError. Việc đọc mà không sử dụng seek với chế độ 'w +' sẽ không mang lại kết quả gì, vì con trỏ tệp sẽ nằm sau nơi bạn đã viết.
10 hữu ích 0 bình luận chia sẻ answer
Huỳnh Di Hân · Huỳnh Di Hân 06:03 24/02/2021
Tôi thấy điều quan trọng cần lưu ý là python 3 xác định các chế độ mở khác với các câu trả lời ở đây là chính xác cho Python 2. Các chế độ mở Python 3 là: 'r' open for reading (default) 'w' open for writing, truncating the file first 'x' open for exclusive creation, failing if the file already exists 'a' open for writing, appending to the end of the file if it exists ---- 'b' binary mode 't' text mode (default) '+' open a disk file for updating (reading and writing) 'U' universal newlines mode (for backwards compatibility; should not be used in new code)Các chế độ r, w, x, ađược kết hợp với các bổ từ chế độ bhoặc t. +là tùy chọn được thêm vào, Unên tránh. Như tôi đã phát hiện ra một cách khó khăn, bạn nên luôn chỉ định tkhi mở tệp ở chế độ văn bản vì đây rlà bí danh cho hàm rttiêu chuẩn open()nhưng là bí danh cho rbcác open()chức năng của tất cả các mô-đun nén (ví dụ: khi đọc *.bz2tệp) . Do đó, các chế độ để mở tệp phải là: rt/ wt/ xt/ atđể đọc / ghi / tạo / thêm vào một tệp ở chế độ văn bản và rb/ wb/ xb/ abđể đọc / ghi / tạo / thêm vào một tệp ở chế độ nhị phân. Sử dụng +như trước đây.
2 hữu ích 0 bình luận chia sẻ
Xem nguồn: https://stackoverflow.com/questions/1466000/difference-between-modes-a-a-w-w-and-r-in-built-in-open-function
|