Làm thế nào để bạn đọc một chuỗi nhiều dòng trong python?

Các chuỗi được sử dụng để biểu diễn văn bản và do đó là một kiểu dữ liệu cơ bản trong bất kỳ ngôn ngữ lập trình cấp cao nào. Trong Python, có nhiều cách khác nhau để thao tác chuỗi bằng các phương thức và hàm tích hợp. Nhưng, nếu bạn muốn viết các chuỗi có nhiều dòng bằng Python cho chương trình của mình thì sao? . Tuy nhiên, điều quan trọng là phải hiểu những lợi ích và hạn chế của từng phương pháp và sử dụng phương pháp nào trong một tình huống cụ thể.

Trong hướng dẫn này, bạn sẽ tìm hiểu một số cách để xác định chuỗi nhiều dòng một cách hiệu quả trong Python, đồng thời tính đến khả năng đọc mã

Chuỗi Python là gì?

Một chuỗi python là một tập hợp các ký tự [bảng chữ cái, số, dấu cách, v.v. ]. Trong Python, các chuỗi dòng đơn được đặt trong dấu ngoặc đơn [''] hoặc dấu ngoặc kép [""] và cả hai đều hoạt động theo cùng một cách. Chuỗi rất giống với danh sách [mảng], tuy nhiên cả hai đều có cách biểu diễn khác nhau

chuỗi là bất biến trong khi mảng có thể thay đổi

Ví dụ

x = 'string #1'
y = "string2 string2"

Với các chuỗi, bạn cũng có thể bao gồm các ký tự thoát. Các ký tự thoát được sử dụng để xác định các ký tự đặc biệt và xử lý các trường hợp cụ thể. Trong Python, các ký tự thoát phải theo dấu gạch chéo ngược []

Ví dụ: bạn có thể sử dụng ký tự thoát để sử dụng dấu ngoặc kép bên trong chuỗi dấu ngoặc kép

>>> x = "A story called \"The Sky and the Sea.\""
>>> print[x]
A story called "The Sky and the Sea."

Dấu gạch chéo ngược cho Python biết rằng câu trích dẫn theo sau nó là một phần của chuỗi. Tất nhiên, bạn cũng có thể làm điều tương tự với một trích dẫn duy nhất. Ngoài ra còn có một số ký tự thoát khác mà bạn có thể sử dụng

xuống dòng [\n], tab [\t], xóa lùi [\b]

Ký tự thoát '\n' được sử dụng để xác định một dòng mới [đây là ký tự mà chúng ta sẽ chủ yếu sử dụng trong bài viết này]. Ví dụ

>>> x = "line1\nline2"
>>> print[x]
line1
line2

Chuỗi nhiều dòng là gì?

Trong chuỗi python là một chuỗi chứa nhiều dòng, thay vì chỉ một dòng. Có một số cách để tạo một chuỗi nhiều dòng trong python. Python cung cấp nhiều cách khác nhau để định dạng chuỗi theo ý thích của bạn

Làm thế nào để bạn đọc một chuỗi nhiều dòng trong Python?

Đọc chuỗi nhiều dòng trong Python tương tự như đọc chuỗi một dòng. Có nhiều cách để tạo chuỗi nhiều dòng trong Python và đầu ra của mỗi cách là như nhau, khả năng đọc mã là mối quan tâm chính của chúng tôi ở đây

Chuỗi nhiều dòng và ví dụ

Hãy xem xét một số cách bạn có thể tạo chuỗi nhiều dòng python với một số ví dụ hữu ích

Chỉ sử dụng ký tự thoát

Như đã giới thiệu trong phần trước, bạn có thể sử dụng ký tự thoát '\n' để nhận một ký tự dòng mới và tách chuỗi thành nhiều dòng. Ví dụ

>>> x = "abc\ndef\nghi"
>>> print[x]
abc
def
ghi
>>> 

Đây là một cách tiếp cận rất đơn giản và có thể tuyệt vời cho các chuỗi 2-3 dòng đơn giản. Nhưng, nếu bạn muốn có nhiều dòng hơn, cách tiếp cận này sẽ dẫn đến mã rất ô uế như thế này

>>> x = 'abcde\nfghij\nklmno\npqrst\nuvwxy\nzabcd\nefghi\njklmn\nopqrs\ntuvwx\nyzabc\ndefgh\nijklm\nnopqr\nstuvw\nxyz'
>>> print[x]
abcde
fghij
klmno
pqrst
uvwxy
zabcd
efghi
jklmn
opqrs
tuvwx
yzabc
defgh
ijklm
nopqr
stuvw
xyz

Bạn sẽ kết thúc với những sợi dây ngang dài vô tận

Sử dụng dấu ngoặc đơn

Bạn cũng có thể sử dụng dấu ngoặc đơn để phân tách các dòng trong mã. Ví dụ

>>> x = ["abc\n"
..      "efg"]
>>> print[x]
abc
efg
>>>

Dấu ngoặc đơn cho phép bạn chuyển sang dòng tiếp theo và căn chỉnh các dòng để làm cho chuỗi dễ đọc hơn. Nhìn chung, điều này có tác dụng tương tự như nối các chuỗi như.

>>> x = "A story called \"The Sky and the Sea.\""
>>> print[x]
A story called "The Sky and the Sea."
0. Lưu ý rằng ký tự thoát dòng mới vẫn cần thiết ở đây

Sử dụng dấu gạch chéo ngược

Tương tự như cách tiếp cận cuối cùng, bạn cũng có thể sử dụng phản ứng dữ dội [bên ngoài chuỗi] để phân tách các dòng mã

>>> x = "abc\n" \
..     "efg\n" \
..     "hij"
>>> 
>>> x
'abc\nefg\nhij'
>>> print[x]
abc
efg
hij

Phản ứng dữ dội trong Python [bên ngoài chuỗi] cho phép bạn tiếp tục dòng mã của mình sang dòng tiếp theo

Hạn chế chính của phương pháp này là bạn phải thêm dấu gạch chéo ngược vào cuối mỗi dòng ngoài ký tự '\n', điều này có thể rất tẻ nhạt

Sử dụng dấu ngoặc kép

Python cung cấp một cách mặc định để viết các chuỗi nhiều dòng. sử dụng dấu ngoặc kép. Mặc dù nó rất đơn giản để sử dụng nhưng nó vẫn có nhược điểm. Đầu tiên, hãy xem một ví dụ

________số 8

Lưu ý rằng bạn có thể sử dụng dấu ngoặc đơn hoặc dấu ngoặc kép ở đây. Bắt đầu từ dấu ngoặc kép đầu tiên, mọi thứ bên trong được coi là một chuỗi, bao gồm các dòng tiếp theo, cho đến khi bạn đóng dấu ngoặc kép

Tuy nhiên, có những lúc điều này có thể cản trở khả năng đọc mã. Ví dụ: nếu bạn có nhiều khoảng thụt lề và bạn muốn sử dụng phương pháp này, bạn không thể căn chỉnh chuỗi với phần còn lại của mã vì các khoảng thụt lề cũng sẽ được tính là một phần của chuỗi như vậy

>>> def f[]:
..     x = """abc
..            def
..            ghi"""
..     print[x]
.. 
>>> f[]
abc
	       def
	       ghi
>>> 

Điều này có thể dẫn đến mã lộn xộn, đặc biệt là khi bạn có nhiều chỗ thụt lề. Phương pháp này được sử dụng tốt nhất khi bạn muốn tạo bình luận cấp cao nhất

Chuỗi nhiều dòng sử dụng phép nối [] và danh sách/bộ

Có một phương pháp khác mà bạn có thể sử dụng để giải quyết nhiều nhược điểm gặp phải với các phương pháp khác

Theo cách tiếp cận này, trước tiên bạn có thể lưu trữ chuỗi nhiều dòng trong một danh sách hoặc bộ, dưới dạng danh sách các dòng. Sau đó, bạn có thể nối tất cả các dòng với ký tự xuống dòng và phương thức chuỗi nối []. Ví dụ

>>> x = "A story called \"The Sky and the Sea.\""
>>> print[x]
A story called "The Sky and the Sea."
0

Ở đây, các dòng được lưu trữ trong bộ x, sau đó được nối bằng phương thức join[] và ký tự xuống dòng. Phương thức join[] nối tất cả các phần tử trong danh sách hoặc bộ với một số chuỗi ở giữa chúng. Bằng cách này, bạn có thể thụt lề mã và, không giống như phương pháp trích dẫn ba lần, việc phân tách từng dòng bằng dấu phẩy sẽ dễ dàng hơn nhiều so với dấu '\n' ở cuối mỗi chuỗi

Nhìn chung, cách này giống Pythonic hơn nhiều và làm cho mã rất dễ đọc

Bản tóm tắt

Trong bài viết này, bạn đã học cách xác định các chuỗi nhiều dòng trong python và ưu/nhược điểm của từng cách tiếp cận

Đầu tiên, bạn đã tìm hiểu sơ qua chuỗi là gì và cách chúng được định nghĩa trong Python. Sau đó, bạn đã học được ký tự thoát là gì và cách sử dụng một số ký tự thoát phổ biến. Tiếp theo, bạn đã đi sâu vào các cách tiếp cận khác nhau để xác định chuỗi nhiều dòng và hiểu trọng tâm của chúng tôi về khả năng đọc mã. Bạn đã học được cách tiếp cận đơn giản nhất và nhanh chóng hiểu ra nhược điểm của nó. Tiếp theo, bạn đã học cách chúng ta có thể tách các dòng của chuỗi trong mã bằng cách sử dụng dấu ngoặc đơn hoặc dấu gạch chéo ngược. Sau đó, bạn đã học được cách xác định chuỗi nhiều dòng mặc định của Python và nhược điểm của nó. Cuối cùng, bạn đã xem cách tiếp cận bằng cách sử dụng một list/tuple và phương thức join[], giải quyết nhiều nhược điểm mà chúng tôi gặp phải với các cách tiếp cận trước đó

Bước tiếp theo

Để tìm hiểu thêm về những kiến ​​thức cơ bản về Python, hướng dẫn, mã hóa và phát triển phần mềm, hãy xem Sách hướng dẫn cơ bản về mã hóa dành cho nhà phát triển của chúng tôi, nơi chúng tôi đề cập đến các ngôn ngữ, khái niệm và công cụ thiết yếu mà bạn sẽ cần để trở thành một nhà phát triển chuyên nghiệp

Cảm ơn và mã hóa hạnh phúc. Chúng tôi hy vọng bạn thích hướng dẫn này. Nếu bạn có bất kỳ câu hỏi hoặc nhận xét nào, vui lòng liên hệ với jacob@initialcommit. io

Chủ Đề