Chia theo tab python

Tiếp cận. Khi bạn tách một chuỗi mà không chuyển bất kỳ dấu phân cách nào, thì theo mặc định, bất kỳ khoảng trắng nào cũng được coi là dấu phân cách. Bạn có thể sử dụng điều này để làm lợi thế của mình và chỉ cần tách chuỗi đã cho mà không cần chuyển bất kỳ dấu phân cách nào trong phương thức split()

Mã số

text = "abc\t\txy\tcda\t\tmnop"
print(text.split())
# ['abc', 'xy', 'cda', 'mnop']

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

Phương pháp 2. Sử dụng lại. tách ra()

Điều kiện tiên quyết. Phương thức 

# input
text = "abc\t\txy\tcda\t\tmnop"
# Expected output
['abc', 'xy', 'cda', 'mnop']
2 trả về một danh sách các chuỗi bằng cách so khớp tất cả các lần xuất hiện của mẫu trong chuỗi và chia chuỗi theo các lần xuất hiện đó

🌎Đọc thêm. Tách Regex trong Python

Tiếp cận. Sử dụng gói regex của Python và gọi phương thức phân tách, phương thức này nhận hai đối số. Đối số đầu tiên phải là mẫu mà bạn muốn so khớp trong khi tách. Trong trường hợp này, nó là một tab đơn giản. Vì vậy, hãy sử dụng biểu thức như

# input
text = "abc\t\txy\tcda\t\tmnop"
# Expected output
['abc', 'xy', 'cda', 'mnop']
3 để tìm kiếm một hoặc nhiều lần xuất hiện của tab. Đối số thứ hai là chính chuỗi (dãy) đã cho. Đó là nó

Mã số

import re
text = "abc\t\txy\tcda\t\tmnop"
print(re.split(r'\t+', text))

# ['abc', 'xy', 'cda', 'mnop']

Phương pháp 3. Sử dụng lại. biên dịch()

Phương thức 

# input
text = "abc\t\txy\tcda\t\tmnop"
# Expected output
['abc', 'xy', 'cda', 'mnop']
4 trả về một đối tượng biểu thức chính quy từ 
# input
text = "abc\t\txy\tcda\t\tmnop"
# Expected output
['abc', 'xy', 'cda', 'mnop']
5 cung cấp các phương thức biểu thức chính quy cơ bản như 
# input
text = "abc\t\txy\tcda\t\tmnop"
# Expected output
['abc', 'xy', 'cda', 'mnop']
6, 
# input
text = "abc\t\txy\tcda\t\tmnop"
# Expected output
['abc', 'xy', 'cda', 'mnop']
7 và 
# input
text = "abc\t\txy\tcda\t\tmnop"
# Expected output
['abc', 'xy', 'cda', 'mnop']
8. Cách tiếp cận hai bước rõ ràng là (1) biên dịch và (2) tìm kiếm mẫu sẽ hiệu quả hơn so với việc gọi, chẳng hạn như 
# input
text = "abc\t\txy\tcda\t\tmnop"
# Expected output
['abc', 'xy', 'cda', 'mnop']
9 cùng một lúc, nếu bạn so khớp cùng một mẫu nhiều lần vì nó tránh được việc biên dịch thừa của cùng một mẫu

🌎Đọc thêm. Biên dịch Python Regex

Mã số

import re
text = "abc\t\txy\tcda\t\tmnop"
print(re.compile("[^\t]+").findall(text))
# ['abc', 'xy', 'cda', 'mnop']

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

Bài tập

Cho một chuỗi chứa các tab ở đầu, giữa và cuối chuỗi. Bạn sẽ tách chuỗi bằng cách sử dụng tab làm dấu phân cách như thế nào?

Thách đấu. Hãy xem xét mã được đưa ra dưới đây. Đầu ra chứa các chuỗi rỗng. Bạn có thể loại bỏ các chuỗi trống khỏi danh sách không?

# Given 
colours = '\tRed\tBlack\tYellow\tBlue\t'
print(colours.split('\t'))
# Output
['', 'Red', 'Black', 'Yellow', 'Blue', '']
# Expected Output
['Red', 'Black', 'Yellow', 'Blue']

Giải pháp. Phương thức

text = "abc\t\txy\tcda\t\tmnop"
print(text.split())
# ['abc', 'xy', 'cda', 'mnop']
0 có thể được sử dụng để lọc ra các chuỗi rỗng từ danh sách. Hàm lấy
text = "abc\t\txy\tcda\t\tmnop"
print(text.split())
# ['abc', 'xy', 'cda', 'mnop']
1 làm đối số đầu tiên và danh sách các chuỗi phân tách làm đối số thứ hai. Sau đó, nó lặp qua danh sách và loại bỏ các phần tử trống. Khi phương thức
text = "abc\t\txy\tcda\t\tmnop"
print(text.split())
# ['abc', 'xy', 'cda', 'mnop']
0 trả về một đối tượng bộ lọc, chúng ta cần sử dụng
text = "abc\t\txy\tcda\t\tmnop"
print(text.split())
# ['abc', 'xy', 'cda', 'mnop']
3 để chuyển đổi đối tượng thành một danh sách để có thể xem nó ở dạng con người có thể đọc được

colours = '\tRed\tBlack\tYellow\tBlue\t'
res = list(filter(None, colours.split('\t')))
print(res)

Ghi chú. Hàm 

text = "abc\t\txy\tcda\t\tmnop"
print(text.split())
# ['abc', 'xy', 'cda', 'mnop']
0 tích hợp sẵn của Python dùng để lọc ra các phần tử vượt qua điều kiện lọc. Phải mất hai đối số.
text = "abc\t\txy\tcda\t\tmnop"
print(text.split())
# ['abc', 'xy', 'cda', 'mnop']
5 và 
text = "abc\t\txy\tcda\t\tmnop"
print(text.split())
# ['abc', 'xy', 'cda', 'mnop']
6. ____0_______5 gán một giá trị Boolean cho từng phần tử trong 
text = "abc\t\txy\tcda\t\tmnop"
print(text.split())
# ['abc', 'xy', 'cda', 'mnop']
6 để kiểm tra xem phần tử đó có vượt qua bộ lọc hay không. Nó trả về một iterator với các phần tử vượt qua điều kiện lọc

🌎Đọc thêm. Bộ lọc Python()

Phần kết luận

Tiếng hoan hô. Chúng tôi đã giải quyết thành công vấn đề đã cho bằng ba cách khác nhau. Tôi hy vọng bạn thích bài viết này và nó sẽ giúp bạn trong hành trình viết mã Python của mình. Hãy đăng ký và theo dõi để có nhiều bài viết thú vị hơn


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

Chia theo tab python

Chia theo tab python

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