Python ngắt chuỗi thành nhiều dòng

Trong hướng dẫn này, chúng ta sẽ tìm hiểu về cách chia chuỗi nhiều dòng thành nhiều dòng và trả về một danh sách của nó

Sử dụng phương thức splitlines()

Trong python, chúng ta có thể sử dụng phương thức

# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
3 để tách chuỗi nhiều dòng thành danh sách của từng chuỗi riêng lẻ

📜Vấn đề. Đưa ra một chuỗi, Bạn sẽ chia chuỗi đó thành danh sách các từ bằng cách sử dụng dòng mới làm dấu tách/dấu phân cách như thế nào?

Ví dụ

# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']

Hãy đi sâu vào các cách khác nhau để giải quyết vấn đề đã cho

Phương pháp 1. Sử dụng đường phân chia

Tiếp cận. Cách thuận tiện nhất và dễ dàng nhất để tách một chuỗi nhiều dòng đã cho thành nhiều chuỗi là sử dụng phương thức

# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
3, i. e. , chỉ cần sử dụng –
# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
5

GHI CHÚ.

# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
3 là một phương thức tích hợp sẵn trong Python dùng để phân tách một chuỗi ở các ngắt dòng, chẳng hạn như 
# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
7 và trả về một danh sách các chuỗi con đã phân tách (i. e. , dòng). Ví dụ:
# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
0 sẽ trả về danh sách sau.
# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
1

Mã số

# Input
text = """Python is an Object Oriented programming language.
COBOL is an Object Oriented programming language.
F# is an Object Oriented programming language."""

print(text.splitlines())

# Output: ['Python is an Object Oriented programming language.', 'COBOL is an Object Oriented programming language.', 'F# is an Object Oriented programming language.']

🌎Đọc liên quan. Đường phân chia chuỗi Python()

Phương pháp 2. Sử dụng chia()

Tiếp cận. Sử dụng

# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
2 để tách chuỗi nhiều dòng đã cho khi ngắt dòng

Mã số

# Input
text = """Python is an Object Oriented programming language.
COBOL is an Object Oriented programming language.
F# is an Object Oriented programming language."""

print(text.split('\n'))

# Output: ['Python is an Object Oriented programming language.', 'COBOL is an Object Oriented programming language.', 'F# is an Object Oriented programming language.']

Sử dụng “\n” đảm bảo rằng bất cứ khi nào một dòng mới xuất hiện, chuỗi sẽ được tách ra

🌎Đọc liên quan. Tách chuỗi Python()

Phương pháp 3. Sử dụng lại. chia nhỏ trong Danh sách Hiểu

Một cách khác để giải quyết vấn đề đã cho là sử dụng phương thức phân tách của mô-đun regex. Bạn có thể tách chuỗi ở mỗi lần ngắt dòng bằng cách chuyển “\n” làm mẫu trong hàm

# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
3. Để đảm bảo rằng không có khoảng trắng thừa ở đầu hoặc cuối trong danh sách kết quả, bạn có thể sử dụng tính năng hiểu danh sách chỉ lưu trữ các chuỗi phân tách và loại bỏ các ký tự khoảng trắng. Điều này có thể được thực hiện với sự trợ giúp của câu lệnh if trong phần hiểu danh sách như trong giải pháp bên dưới

Mã số

import re

text = """Python is an Object Oriented programming language.
COBOL is an Object Oriented programming language.
F# is an Object Oriented programming language."""

print([x for x in re.split("\n", text) if x!=''])

# Output: ['Python is an Object Oriented programming language.', 'COBOL is an Object Oriented programming language.', 'F# is an Object Oriented programming language.']

GHI CHÚ. Phương thức 

# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
4 khớp tất cả các lần xuất hiện của 
# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
5 trong 
# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
6 và chia chuỗi dọc theo các kết quả phù hợp, dẫn đến danh sách các chuỗi giữa các kết quả phù hợp. Ví dụ: 
# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
7 kết quả trong danh sách các chuỗi 
# Input
text = """abc
def
ghi
"""
# Expected Output
['abc', 'def', 'ghi']
8

🌎Đọc thêm tại đây – Python Regex Split

Danh sách hiểu. “Việc hiểu danh sách bao gồm các dấu ngoặc chứa một biểu thức, theo sau là mệnh đề for, sau đó là 0 hoặc nhiều mệnh đề for hoặc if. Kết quả sẽ là một danh sách mới xuất phát từ việc đánh giá biểu thức trong ngữ cảnh của các mệnh đề for và if theo sau nó. ”

🌎Đọc thêm tại đây. Liệt kê khả năng hiểu trong Python — Hướng dẫn minh họa hữu ích


Bạn có muốn làm chủ siêu năng lực regex không? . (1) nghiên cứu một chương sách, (2) giải câu đố mật mã và (3) xem video về chương giáo dục

Phần kết luận

Chúng tôi đã giải quyết thành công vấn đề đã cho bằng ba cách tiếp cận khác nhau. Tôi hy vọng bạn bài viết này đã trả lời tất cả các câu hỏi của bạn. Vui lòng đăng ký và theo dõi để biết thêm các bài viết thú vị

Mã hóa vui vẻ. 🙂

Đọc liên quan.
⦿ Trăn. Tách chuỗi theo dòng mới
⦿ Python. Tách chuỗi theo khoảng trắng
⦿ Python. Tách Chuỗi thành Ký tự


Khóa học Python Regex

Các kỹ sư của Google là những bậc thầy về biểu thức chính quy. Công cụ tìm kiếm Google là một công cụ xử lý văn bản khổng lồ trích xuất giá trị từ hàng nghìn tỷ trang web.   

Các kỹ sư của Facebook là những bậc thầy về biểu thức chính quy. Các mạng xã hội như Facebook, WhatsApp và Instagram kết nối con người qua tin nhắn văn bản.  

Các kỹ sư của Amazon là những bậc thầy về biểu thức chính quy. Gã khổng lồ thương mại điện tử vận ​​chuyển sản phẩm dựa trên mô tả sản phẩm bằng văn bản. Biểu thức chính quy thống trị trò chơi khi xử lý văn bản đáp ứng khoa học máy tính.  

Nếu bạn cũng muốn trở thành bậc thầy về biểu thức chính quy, hãy xem khóa học Python regex toàn diện nhất hành tinh

Python ngắt chuỗi thành nhiều dòng

Python ngắt chuỗi thành nhiều dòng

Shubham Sayon

Tôi là một người tạo nội dung và Blogger Python chuyên nghiệp. Tôi đã xuất bản nhiều bài báo và tạo các khóa học trong một khoảng thời gian. Hiện tại tôi đang làm việc với tư cách là một freelancer toàn thời gian và tôi có kinh nghiệm trong các lĩnh vực như Python, AWS, DevOps và Networking