Chỉnh sửa tệp văn bản python

Trong học máy, dữ liệu thường được lưu trữ dưới dạng tệp văn bản. Khi kích thước của tệp dữ liệu tương đối nhỏ, chẳng hạn như vài trăm dòng hoặc ít hơn, thì thường dễ dàng chỉnh sửa tệp trong trình soạn thảo văn bản hoặc trong Excel. Nhưng khi bạn đang làm việc với một tệp dữ liệu tương đối lớn, thông thường bạn sẽ cần chỉnh sửa tệp đó theo chương trình

Một buổi chiều mưa, tôi ngồi code 5 hàm cơ bản trong Python. Tôi đặt tên cho chúng theo tên các đối tác SQL của chúng. delete_lines[], update_line[], insert_line[], append_line[] và show_file[]

Có nhiều cách để tiếp cận việc thực hiện bất kỳ hoạt động nào trong số này. sở thích của tôi là. . . tốt nhất, nó được giải thích tốt nhất bằng cách xem ảnh chụp màn hình ở trên và mã của tôi bên dưới

Chúc vui vẻ vào một chiều chủ nhật mưa

Tệp văn bản không thể tự sửa đổi. Máy tự động di động là hệ thống hấp dẫn tự sửa đổi. Tôi nhớ rất rõ việc lập trình Quy tắc 30 [trái] nhiều năm trước bằng cách sử dụng BASIC trên máy tính TRS-80 khi lần đầu tiên tôi học cách viết mã. Hình ảnh trung tâm là một ví dụ 3D. Hình ảnh bên phải là Quy tắc 3283936144

Có ba cách chúng ta tương tác với Blue Crab. Chúng tôi đưa ra các lệnh từ thiết bị đầu cuối, bên trong vỏ BASH; . Trừ khi bạn chuẩn bị toàn bộ phép tính trên máy cục bộ của mình và sau đó tải lên Blue Crab, gần như chắc chắn bạn sẽ cần chỉnh sửa một tệp văn bản

Phần này bao gồm mức tối thiểu cần thiết để sử dụng

$ more my_script
$ cat my_script
9 để chỉnh sửa tệp văn bản. Nếu bạn có một trình soạn thảo ưa thích khác hoặc nếu không thì bạn cảm thấy thoải mái khi chỉnh sửa các tệp trong Linux, bạn có thể chuyển sang phần tiếp theo.

Tạo một tập tin trống

Trước khi chúng tôi chỉnh sửa tệp, trước tiên chúng tôi sẽ tạo một tệp trống bằng lệnh

$ more my_script
$ cat my_script
0

$ touch my_script
$ ls -l

Danh sách tệp sẽ hiển thị rằng tệp của bạn đã được tạo. Hãy xem những gì bên trong. Sử dụng các lệnh

$ more my_script
$ cat my_script
1 và
$ more my_script
$ cat my_script
0 để hiển thị nội dung

$ more my_script
$ cat my_script

Cả hai đều báo cáo rằng tệp trống. Lệnh

$ more my_script
$ cat my_script
1 hữu ích để cuộn qua các tệp văn bản dài trong khi sử dụng phím cách để nâng cao chế độ xem của bạn. Lệnh
$ more my_script
$ cat my_script
0 là viết tắt của “concatenate” và nhận nhiều đối số, in nội dung của từng đối số tệp ra màn hình. Điều này có thể hữu ích để nối nhiều tệp văn bản thành một tệp văn bản lớn hơn

Thoát khỏi một chương trình

Bất cứ khi nào bạn nhìn thấy văn bản

$ more my_script
$ cat my_script
3 ở cuối màn hình, bạn có thể sử dụng phím cách để tiến lên hoặc q để thoát. Bạn cũng có thể sử dụng q để thoát khỏi các trang thủ công và kết quả của lệnh
$ more my_script
$ cat my_script
4, lệnh này tương tự như
$ more my_script
$ cat my_script
1 nhưng cung cấp chức năng
$ more my_script
$ cat my_script
9 mà chúng tôi sẽ mô tả bên dưới

Nếu bạn thực sự bị mắc kẹt trong một chương trình, bạn có thể sử dụng ctrl+c để ngắt chương trình đó. Sử dụng điều này một cách tiết kiệm, vì một số chương trình sẽ thoát hoàn toàn khi bạn thực hiện việc này

chỉnh sửa tập tin

Mở tệp bằng cách sử dụng

$ more my_script
$ cat my_script
9 hoặc
$ more my_script
$ cat my_script
8, viết tắt của “visual”

$ vi my_script

Ghi chú.

$ more my_script
$ cat my_script
9 là trình chỉnh sửa hai chế độ, có nghĩa là bạn phải chú ý cẩn thận xem mình đang sử dụng chế độ nào. Nó có vô số lợi thế so với các trình chỉnh sửa không chế độ được cho là khiến ngón tay của bạn sởn gai ốc khi nhấn phím điều khiển quá nhiều

Trình chỉnh sửa trực quan trông như thế này

Đôi khi có thông tin hữu ích ở hàng dưới cùng. Phía dưới bên phải hiển thị dòng và số ký tự chúng tôi đã chọn. Các ký tự dấu ngã [

$ vi my_script
0] biểu thị sự vắng mặt của văn bản

Chúng tôi hiện đang ở chế độ lệnh, được thiết kế để ra lệnh và chọn văn bản. Sử dụng phím i để chuyển sang chế độ chèn và phím thoát để quay lại chế độ lệnh. Điều cực kỳ quan trọng là bạn phải hiểu sự khác biệt giữa các chế độ này. Bạn luôn có thể biết khi nào mình đang ở chế độ chèn vì từ

$ vi my_script
1 xuất hiện ở cuối màn hình

Trong chế độ chèn, bạn có thể nhập văn bản. Hãy viết lệnh

$ vi my_script
2 được hiển thị bên dưới

Tập lệnh bó là một tệp văn bản chứa một loạt lệnh [một “lô”] mà bạn có thể nhập trực tiếp vào thiết bị đầu cuối hoặc trình bao [N. b. những từ này có nghĩa giống nhau]. Trong ví dụ trên, chúng tôi đã viết một lệnh lặp lại một số văn bản tới thiết bị đầu cuối. Lệnh

$ vi my_script
2 thực sự là một chương trình nhận nhiều đối số, tất cả văn bản và chỉ cần lặp lại chúng

Bây giờ chúng tôi đã nhập một số văn bản, chúng tôi sẽ sử dụng chế độ lệnh để lưu tệp và thoát. Đầu tiên, sử dụng thoát để vào chế độ lệnh. Mở dấu nhắc lệnh bằng ký tự dấu hai chấm

$ vi my_script
4 sẽ xuất hiện ở phía dưới bên trái. Trong khi nhiều lệnh có thể được thực thi trực tiếp, dấu nhắc lệnh chấp nhận các lệnh hữu ích và phức tạp hơn. Nhập
$ vi my_script
5, có nghĩa là “viết và thoát” trong dấu nhắc lệnh và nhấn enter. Chương trình sẽ lưu tệp và thoát

Bây giờ bạn đã quay lại dòng lệnh, bạn có thể sử dụng

$ more my_script
$ cat my_script
1 hoặc
$ more my_script
$ cat my_script
0 để xem tệp

Thực hiện một kịch bản

Tập lệnh BASH của chúng tôi có tên là

$ vi my_script
8 là một trong những tập lệnh ngắn nhất mà bạn có thể viết. Thực hiện nó với chương trình
$ vi my_script
9. Bạn hiện đang ở bên trong trình bao BASH [mà chúng tôi gọi là “trình bao đăng nhập”], nhưng bạn có thể sử dụng chương trình
$ vi my_script
9 để thực thi tập lệnh bên trong trình bao phụ. Bạn có thể dễ dàng tự mình chạy lệnh
$ vi my_script
2

$ more my_script
$ cat my_script
0

Hashbang. hoặc, một chương trình là gì?

Có hai loại tệp trên bất kỳ máy tính nào. nhị phân hoặc văn bản. Các tệp được mã hóa ở định dạng nhị phân mà con người không thể đọc được và tạo ra một mớ hỗn độn khi bạn cố gắng xem chúng bằng

$ more my_script
$ cat my_script
0. Các tệp văn bản có thể đọc được bởi con người nhưng vô nghĩa đối với máy. Để thực thi một tệp văn bản, chúng tôi yêu cầu một trình thông dịch thực hiện trực tiếp các hướng dẫn trong văn bản hoặc trình biên dịch dịch văn bản thành nhị phân mà sau đó máy có thể thực thi

Đối với phần đầu tiên của khóa học ngắn hạn, chúng tôi sẽ giải quyết riêng các ngôn ngữ được giải thích để tránh học cách biên dịch mã. Bạn đã sử dụng một trong những ngôn ngữ thông dịch phổ biến nhất, BASH, nhưng có lẽ cũng quen thuộc với Python, Perl, R và BASIC. Chúng tôi nói rằng các ngôn ngữ được biên dịch như Fortran, C và C++ là các ngôn ngữ cấp thấp không phải để hạ thấp chúng mà để chỉ ra rằng chúng gần với ngôn ngữ máy hơn. Tuy nhiên, ngày nay, sự khác biệt trở nên mờ nhạt vì nhiều ngôn ngữ được giải thích có thể biên dịch thành mã máy nhanh.

Trong bài tập trên, chúng tôi đã gọi trình thông dịch BASH bằng cách sử dụng lệnh

$ vi my_script
9 để thông dịch và do đó thực hiện chương trình ngắn của chúng tôi. Kịch bản của chúng tôi,
$ vi my_script
8 là một tệp văn bản thông thường. Chúng ta có thể biến nó thành một chương trình thực thi bằng cách thêm hashbang, là một đoạn văn bản ở đầu tập lệnh cho máy tính biết cách thực thi chương trình

Mở

$ vi my_script
8 bằng vi bằng cách sử dụng
$ more my_script
$ cat my_script
06. Vào chế độ chèn với i. Với con trỏ ở ký tự đầu tiên, hãy sử dụng phím enter để thêm một dòng mới chứa hashbang của chúng tôi.
$ more my_script
$ cat my_script
07. Khi bạn hoàn thành, kịch bản trông như thế này

$ more my_script
$ cat my_script
7

Lưu tệp bằng phương pháp chúng tôi đã học ở trên. Tại thời điểm này, tệp vẫn là tệp văn bản. Hashbang chỉ hữu ích cho mục đích tài liệu, bởi vì nó báo hiệu cho những người đọc khác rằng đây thực sự là một tập lệnh BASH. Sử dụng đúng hashbang cũng tạo ra các màu hữu ích được gọi là đánh dấu cú pháp trong

$ more my_script
$ cat my_script
8, điều này sẽ hữu ích cho việc phát hiện lỗi sau này

Để biến tệp văn bản thành tệp thực thi, hãy chạy lệnh sau. Sau khi bạn chạy lệnh, tên tệp sẽ chuyển sang màu xanh nếu bạn liệt kê thư mục này

$ more my_script
$ cat my_script
9

Lệnh

$ more my_script
$ cat my_script
09 thay đổi quyền trên tệp. Bạn có thể nhớ mã quyền từ lần gặp đầu tiên của chúng tôi với
$ more my_script
$ cat my_script
70 trước đó. Đối số
$ more my_script
$ cat my_script
71 yêu cầu hệ thống thêm quyền thực thi cho người dùng tôi. e. chủ sở hữu của tập tin. Khi bạn làm điều đó, bạn có thể thực hiện chương trình trực tiếp bằng cách sử dụng
$ more my_script
$ cat my_script
72 mà không cần yêu cầu máy sử dụng BASH

Sử dụng môi trường

Sau này chúng ta sẽ học cách dễ dàng chuyển đổi trình thông dịch bằng cách điều khiển môi trường của chúng ta. Chúng ta có thể sử dụng hàm băm sau để hỏi môi trường sử dụng trình thông dịch nào. Ví dụ: một hashbang Python sẽ trông như thế này

$ more my_script
$ cat my_script
4

Điều này có nghĩa là "sử dụng bất kỳ con trăn nào có sẵn" miễn là chúng tôi đã đặt quyền thực thi trên tệp. Sử dụng hashbang này đảm bảo rằng các tập lệnh của chúng tôi sau này có thể di chuyển sang các hệ thống khác mà không cần biết vị trí chính xác của

$ more my_script
$ cat my_script
73. Phiên dịch viên của
$ vi my_script
9 luôn được đặt tại
$ more my_script
$ cat my_script
75, tuy nhiên có thể tìm thấy nhiều phiên dịch viên khác tại các địa điểm khác

Thông tin thêm về
$ more my_script
$ cat my_script
9

Giới thiệu đầy đủ về

$ more my_script
$ cat my_script
9 hoặc
$ more my_script
$ cat my_script
8 [một là phiên bản “cải tiến” của phiên bản kia nhưng chúng gần như tương đương với mục đích của chúng tôi] nằm ngoài phạm vi của khóa học này. Hiện tại, đây là danh sách các thủ thuật yêu thích của tôi, tất cả đều được sử dụng trong chế độ lệnh

Python có thể chỉnh sửa tệp không?

Trong mã hóa, các tệp được sử dụng để lưu trữ dữ liệu. Sau đó, bạn có thể dễ dàng truy cập dữ liệu đó bất cứ lúc nào. Đọc, viết và chỉnh sửa tệp trong Python là một nhiệm vụ phổ biến, vì ngôn ngữ này cung cấp cho chúng ta các hàm tích hợp sẵn cho phép chúng ta làm như vậy .

Làm cách nào để chỉnh sửa mã trong Python?

Đối với một số lệnh GainSeeker Python, trước tiên bạn có thể sử dụng giao diện Hành động đơn giản để chèn một khối mã cơ bản, sau đó sửa đổi mã đó theo ý muốn. Để làm như vậy, hãy nhấp chuột phải vào dòng mã mà bạn muốn chèn khối mã cơ bản, sau đó chọn Thêm hành động .

Chủ Đề