Page 59 - Python Simple
P. 59

7. Vào và ra                                                     http://www.vithon.org/tutorial/2.5/node9.html



             được biểu diễn bởi '\n', một chuỗi chỉ chứa duy nhât một ký tự dòng mới.

                  >>> f.readline()
                  'This is the first line of the file.\n'
                  >>> f.readline()
                  'Second line of the file\n'
                  >>> f.readline()
                  ''


             f.readlines() trả về một danh sách tất cả các dòng trong tập tin. Nếu truyền
             một tham số không bắt buộc sizehint, nó sẽ đọc nhiêu đó byte từ tập tin và thêm
             một chút đủ để hoàn tất một dòng, và trả về các dòng đã đọc được. Điều này
             thường được dùng để đọc một cách hiệu quả từng dòng một trong một tập tin
             lớn mà không cần phải nạp toàn bộ tập tin vào bộ nhớ. Chỉ có các dòng toàn vẹn
             mới được trả về.

                  >>> f.readlines()
                  ['This is the first line of the file.\n', 'Second line of the file\n']

             Một cách khác để đọc các dòng là lặp qua đối tượng tập tin. Nó rất tiết kiệm bộ
             nhớ, nhanh, và có mã đơn giản:

                  >>> for line in f:
                          print line,

                  This is the first line of the file.
                  Second line of the file

             Cách này đơn giản hơn nhưng không cho bạn điều khiển cách đọc. Vì hai cách
             này quản lý bộ đệm dòng khác nhau, chúng không nên được dùng chung.


             f.write(string) viết nội dung của string vào tập tin, trả về None.

                  >>> f.write('This is a test\n')

             Để viết một thứ khác không phải là chuỗi, nó sẽ cần được chuyển thành một chuỗi
             trước:

                  >>> value = ('the answer', 42)
                  >>> s = str(value)
                  >>> f.write(s)


             f.tell() trả về một số nguyên cho biết vị trí hiện tại của đối tượng tập tin, tính
             theo byte từ đầu tập tin. Để di chuyển vị trí, dùng "f.seek(offset, from_what)". Vị
             trí được tính từ tổng của offset và điểm tham chiếu; điểu tham chiếu được xác định
             bởi thông số from_what . Giá trị from_what 0 tính từ đầu tập tin, 1 dùng vị trí hiện
             tại, và 2 tính từ vị trí cuối tập tin. from_what có thể bị bỏ qua và mặc định là 0,
             điểm tham chiếu là đầu tập tin.
                  >>> f = open('/tmp/workfile', 'r+')
                  >>> f.write('0123456789abcdef')
                  >>> f.seek(5)     # Go to the 6th byte in the file



     5 of 7                                                                                   08/31/2011 10:26 AM
   54   55   56   57   58   59   60   61   62   63   64