Hãy nói về tập tin i o.
Ý tôi là gì?
Bạn sẽ thấy điều này rất nhiều trong lập trình.
IO là viết tắt của đầu ra đầu vào.
Bạn thấy đấy, hầu hết các trường hợp, máy móc không giao tiếp chỉ trong một môi trường.
Ví dụ, cho đến nay chúng tôi đang viết mã của chúng tôi, giả sử, một trình soạn thảo như văn bản Sublime mà tôi
có ở đây, hoặc Pi Charm hoặc một gợn sóng trực tuyến.
Nhưng thông thường bạn muốn tương tác với các phần khác nhau của hệ thống.
Có thể bạn muốn nói chuyện với một trang web khác, có thể bạn muốn nói chuyện với một thứ gì đó trên màn hình của
bạn, có thể là một tệp, có thể hai máy khác nhau đang giao tiếp với nhau.
Có thể bạn đang nói với một cơ sở dữ liệu.
IO chỉ đơn giản có nghĩa là, Này, tôi muốn bạn nhập một thứ gì đó từ thế giới bên ngoài và xuất một thứ gì đó ra thế
giới bên ngoài.
Và một trong những cách phổ biến nhất mà chúng ta sử dụng những thứ như IO là đọc tệp.
Bạn có thể nghĩ về Python và sẽ không hay như thế nào nếu chúng ta có thể viết một
script nén hình ảnh trong khi chúng ta cần IO, sau đó tôi cần nhập một hình ảnh và sau đó tôi cần xuất tệp nén.
Hình ảnh.
Có lẽ tôi muốn làm việc với tệp PDF và có thể thêm hình mờ vào tất cả các trang pdf của mình.
Sau đó, chúng tôi nhập một tệp PDF và xuất một phiên bản PDF mới.
Vì vậy, đây là một nhiệm vụ rất phổ biến mà chúng tôi thấy rất nhiều.
Và việc đọc và ghi file là một công cụ rất quan trọng trong vành đai đồ nghề của chúng ta.
Và nhân tiện, chúng tôi có một dự án sắp tới mà chúng tôi thực sự sẽ sử dụng nó với các tệp PDF.
Nhưng hiện tại, làm cách nào chúng ta có thể thực hiện đầu ra tệp này bằng Python?
Chà, Python có một chức năng tích hợp cho phép chúng ta mở và ghi hai tệp.
Và nó đơn giản được gọi là cởi mở, tốt đẹp và dễ dàng.
Vì vậy, bằng cách sử dụng mở, chúng ta có thể làm một cái gì đó như thế này.
Tôi có thể tạo một tệp văn bản mẫu trong màn hình của chúng tôi, vì vậy tôi sẽ sử dụng thiết bị đầu cuối của mình ở đây.
Vì vậy, nếu chúng ta nhìn vào thư mục làm việc hiện tại.
Tôi đang sử dụng máy tính để bàn.
Nếu bạn đang sử dụng Windows thì bạn có thể phải thực hiện một số lệnh khác nhau tại đây.
Nhưng bây giờ bạn đã khá quen thuộc rằng bạn có thể tạo một tệp nếu bạn muốn.
Bây giờ tôi có thể làm điều này theo cách thủ công hoặc trong thiết bị đầu cuối của mình.
Tôi thực sự có thể làm.
Nếu bạn đang sử dụng máy Mac, bạn có thể chỉ cần chạm và sau đó tôi sẽ nói văn bản chấm kiểm tra.
Vì vậy, nếu tôi làm ở đây, bạn sẽ thấy rằng tôi có một tệp văn bản thử nghiệm và một tệp script dot py.
Và một lần nữa, chỉ để kiểm tra lại xem tôi có truy cập vào màn hình của mình hay không.
Chuẩn rồi.
Tôi có hai cái này ngay đây.
Hoàn hảo.
Bây giờ ở đây, chúng ta có thể nói đơn giản trong tệp script của mình.
Mở.
Và tên của tập tin.
Trong trường hợp của chúng tôi, đó là thử nghiệm.
Hãy chắc chắn rằng đó là kiểm tra chuỗi, chấm văn bản.
Chỉ vậy thôi.
Bây giờ tôi có thể gán điều này cho một biến, gọi nó là tệp của tôi.
Và bây giờ chúng ta có đối tượng tệp.
Vì vậy, chúng ta hãy kiểm tra điều này.
Nếu tôi làm ở đây, hãy in tệp của tôi.
Hãy xem điều gì sẽ xảy ra.
Tôi sẽ chạy mã của mình.
Vì vậy, giả sử python ba và sau đó chạy tập lệnh dot py.
Được rồi.
Tôi nhận được một đối tượng, một cái bao dệt, tôi nhận được tên, đó là văn bản, tôi nhận được chế độ, mà tôi chưa chắc nó
là gì.
Chúng ta sẽ tìm hiểu và sau đó là mã hóa, đó là cách tệp này được mã hóa, là UTF tám.
Hầu hết các tệp thường được mã hóa theo UTF tám.
Được rồi, vậy làm cách nào tôi có thể thực sự đọc được tệp này?
Tất cả những gì chúng ta cần làm là tệp của tôi có một dấu chấm.
Reed phương pháp trên nó để nếu tôi chạy điều này ngay bây giờ.
Chà, tôi nhận được một khoảng trống vì không có gì trong tệp văn bản thử nghiệm này.
Vì vậy, chúng ta hãy viết một cái gì đó.
Tôi sẽ mở tệp này và văn bản tuyệt vời và chỉ cần viết.
Xin chào, tôi tên là Andre.
Bây giờ, tôi thực sự, thực sự sáng tạo với cái này.
Làm tốt lắm.
Được rồi, quay lại thôi.
Vì vậy, bây giờ nếu tôi đọc tập tin này.
Nhìn kìa.
Tôi có thể đọc.
Xin chào, tôi tên là Andre.
Và bây giờ bạn đi.
Tôi đã đọc hồ sơ của mình.
Tốt đẹp và dễ dàng.
Bây giờ, nếu tôi chạy lại điều này, hãy chỉ.
Đọc cái này nhiều lần.
Nếu tôi bấm Chạy.
Hừ!
Tôi có thể đọc lần đầu tiên, nhưng hai lần này tôi không đọc được gì cả.
Tại sao vậy?
Chà, chức năng đang mở này có ý tưởng về một con trỏ.
Tức là bạn chỉ có thể đọc tệp một lần.
Và khi bạn mở, nó sẽ trả về một đối tượng tệp.
Và nội dung của tệp bạn có thể đọc.
Và nội dung của tệp có màu đỏ với một con trỏ giống như bạn thấy ở đây từng cái một và được in ra
màn hình.
Nhưng khi kết thúc lần đọc đầu tiên này, con trỏ sẽ ở cuối tệp.
Vì vậy, bây giờ khi nó cố gắng đọc, nó sẽ ở cuối tệp và không còn gì ở đó.
Vì vậy, cách chúng ta giải quyết vấn đề này là làm một cái gì đó như thế này.
Chúng tôi chỉ cần nói tệp của tôi chấm C, di chuyển con trỏ của chúng tôi đến bất kỳ chỉ mục nào chúng tôi muốn.
Trong trường hợp của chúng tôi, hãy tìm kiếm số không.
Vì vậy, nếu tôi chạy điều này ngay bây giờ, bạn sẽ làm được.
Và nếu tôi di chuyển con trỏ trở lại.
Và tôi lưu và chạy cái này.
Được rồi.
Bây giờ tốt hơn rất nhiều.
Và điều này chỉ để chứng minh rằng Python sử dụng ý tưởng về con trỏ này để đọc một tệp.
Bây giờ một điều độc đáo khác mà tôi có thể làm là đọc dòng.
Vì vậy, nếu tôi chạy điều này.
Nó đọc dòng, nhưng giả sử tệp văn bản của chúng ta có các dòng khác nhau.
Vậy bạn có khỏe không?
Hãy nói một khuôn mặt cười ở đây.
Nếu bây giờ tôi đọc dòng.
Lại.
Chào.
Tên tôi là Andre.
Nếu tôi đọc lại dòng.
Chào.
Tên tôi là Andre bởi vì tôi nhận được từng dòng.
Tôi chỉ nhận được dòng đầu tiên nếu tôi in nó nhiều lần.
Và tôi chạy cái này.
Được rồi, điều đó tốt hơn.
Tôi có.
Xin chào, tên tôi là Andre Smiley Face.
Bạn khỏe không?
Một lần nữa, con trỏ tiếp tục di chuyển.
Đúng vậy, vì vậy tôi có thể tiếp tục đọc các dòng.
Một điều khác mà tôi có thể làm là chỉ nói các dòng đã đọc nếu tôi chạy nó.
Tôi nhận được một danh sách chứa toàn bộ tệp, đọc tất cả các dòng và bạn thấy ở đây là tôi có.
Xin chào, tên tôi là Andre Nagy.
Tôi có một dòng mới ở đây.
Một khuôn mặt cười, một dòng mới.
Hãy nhớ rằng, đây là trình tự thoát.
Và sau đó bạn thế nào và không có dòng mới nào ở đây?
Bởi vì không có dòng mới.
Nó là phần cuối của tập tin.
Vì vậy, những điều này là cực kỳ hữu ích.
Có lẽ chúng ta có thể sử dụng biểu thức chính quy để tìm kiếm một đoạn văn bản trong tệp.
Điều đó khá hữu ích, phải không?
Bây giờ là điều cuối cùng chúng ta cần làm và điều này hơi khó chịu, vì vậy tôi sẽ chỉ cho bạn cách chúng ta không
cần làm điều đó trong tương lai.
Nhưng bạn thực sự phải đóng tệp theo cách thủ công sau khi mở bằng chế độ mở.
Vì vậy, bạn có thể sử dụng nó ở một nơi khác trong chương trình.
Nó chỉ là một tiêu chuẩn tốt.
Vì vậy, những gì bạn phải làm là nói rằng tệp của tôi đóng sau khi bạn hoàn thành việc đó.
Bạn nói với máy tính của bạn.
Chào.
Bạn cần phải dừng bất cứ điều gì bạn đang làm.
Tôi không còn hứng thú với hồ sơ nữa.
Chúng tôi đã hoàn thành nó.
Bạn có thể sử dụng nó ở một nơi khác.
Vì vậy, thông thường chúng tôi làm điều gì đó như thế này và chúng tôi đã hoàn thành.
Chúng ta hãy cùng nghỉ ngơi và tìm hiểu thêm một số điều trong video tiếp theo.