Tôi có một tệp văn bản đơn giản với hàng nghìn từ, mỗi từ trong dòng riêng của nó, ví dụ:Python: tải các từ từ tệp vào một tập hợp
aardvark
hello
piper
tôi sử dụng đoạn mã sau để tải những lời thành một tập (Tôi cần danh sách các từ để kiểm tra thành viên, vì vậy thiết lập được cấu trúc dữ liệu tôi đã chọn):
my_set = set(open('filename.txt'))
Đoạn mã trên tạo ra một thiết lập với các mục sau (mỗi từ được theo sau bởi một dấu cách và xuống dòng nhân vật:
("aardvark \n", "hello \n", "piper \n")
gì là cách đơn giản nhất để tải các tập tin vào một tập nhưng thoát khỏi không gian và \ n
Cảm ơn
Đây là giải pháp tốt nhất nếu bạn có tệp lớn, vì bản đồ sẽ tải toàn bộ tệp vào bộ nhớ như một danh sách các dòng, mà sau đó sẽ được loại bỏ (itertools.imap có thể khắc phục điều đó, mặc dù). –
@Ryan: điều đó đúng với Python <= 2.6, nhưng trong bản đồ 3.0 trả về một trình tạo. – Stephan202
@RyanGinstrom Xin lỗi vì đã đến trễ, nhưng tôi không thể không hỏi câu hỏi này cho bạn! Tôi đã quan sát thấy rằng 'print'' my_set [0] 'vẫn in 'aardvark'. Nó có di chuyển con trỏ tới dòng tiếp theo sau khi in không? Vui lòng sửa tôi nếu tôi nhầm, nhưng điều này xảy ra như thế nào? (Python 27) Cảm ơn! –