Python chia theo tab

Bạn có thể sử dụng phương thức Replace để thay '\t' bằng chuỗi rỗng. Thích.
String str1 = "Great punctuation: keep only words, skip all punctuation.\tAlso - skip all spaces and tab characters!";
str1 = str1.Replace["\t", ""];
char[] spearator = { ',', ' ', '!', ':', ';', '.', '-' };
String[] strlist1 = str1.Split[spearator, StringSplitOptions.RemoveEmptyEntries];
foreach [String x in strlist1]
{
    Console.WriteLine[x];
}
Đầu ra.
Tuyệt vời
dấu câu
giữ
chỉ
từ
skip
all
punctuation
Also
skip
all
spaces
and
tab
characters

Tôi có tệp chứa các giá trị được phân tách bằng tab ["\t"]. Tôi đang cố tạo một danh sách và lưu trữ tất cả các giá trị của tệp trong danh sách. Nhưng tôi gặp một số vấn đề. Đây là mã của tôi

line = "abc def ghi"
values = line.split["\t"]

Nó hoạt động tốt miễn là chỉ có một tab giữa mỗi giá trị. Nhưng nếu có một hoặc một tab thì nó cũng sao chép tab đó thành các giá trị. Trong trường hợp của tôi, phần lớn tab phụ sẽ nằm sau giá trị cuối cùng trong tệp

Giải pháp tốt nhất

Bạn có thể sử dụng

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
0 tại đây

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']

cập nhật

Bạn có thể sử dụng

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
1 để loại bỏ dấu
>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
2 và sau đó áp dụng regex

>>> yas = "yas\t\tbs\tcda\t\t"
>>> re.split[r'\t+', yas.rstrip['\t']]
['yas', 'bs', 'cda']

Giải pháp liên quan

C# – sự khác nhau giữa String và string trong C#

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
3 là một bí danh trong C# cho
>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
4.
Vì vậy, về mặt kỹ thuật, không có sự khác biệt. Nó giống như
>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
5 so với.
>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
6.

Theo hướng dẫn, thông thường nên sử dụng

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
3 bất cứ khi nào bạn đề cập đến một đối tượng

e. g

line = "abc def ghi"
values = line.split["\t"]
2

Tương tự như vậy, tôi nghĩ thông thường nên sử dụng

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
8 nếu bạn cần tham khảo cụ thể về lớp học

e. g

line = "abc def ghi"
values = line.split["\t"]
4

Đây là phong cách mà Microsoft có xu hướng sử dụng trong

Có vẻ như hướng dẫn trong lĩnh vực này có thể đã thay đổi, vì StyleCop hiện bắt buộc sử dụng các bí danh cụ thể của C#

Python – Cách kiểm tra xem một tệp có tồn tại mà không có ngoại lệ hay không

Nếu lý do bạn đang kiểm tra là để bạn có thể làm điều gì đó như

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
9, thì sẽ an toàn hơn khi sử dụng
>>> yas = "yas\t\tbs\tcda\t\t"
>>> re.split[r'\t+', yas.rstrip['\t']]
['yas', 'bs', 'cda']
0 khi cố gắng mở nó. Việc kiểm tra rồi mở có nguy cơ khiến tệp bị xóa hoặc bị di chuyển hoặc điều gì đó xảy ra giữa thời điểm bạn kiểm tra và khi bạn cố mở tệp đó

Nếu bạn không định mở tệp ngay lập tức, bạn có thể sử dụng

Trả lại

>>> yas = "yas\t\tbs\tcda\t\t"
>>> re.split[r'\t+', yas.rstrip['\t']]
['yas', 'bs', 'cda']
2 nếu đường dẫn là tệp thông thường hiện có. Điều này tuân theo các liên kết tượng trưng, ​​vì vậy cả hai và có thể đúng cho cùng một đường dẫn

line = "abc def ghi"
values = line.split["\t"]
8

nếu bạn cần chắc chắn đó là một tập tin

Bắt đầu với Python 3. 4, cung cấp một cách tiếp cận hướng đối tượng [được nhập lại vào

>>> yas = "yas\t\tbs\tcda\t\t"
>>> re.split[r'\t+', yas.rstrip['\t']]
['yas', 'bs', 'cda']
4 trong Python 2. 7]

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
0

Để kiểm tra một thư mục, hãy làm

>>> import re
>>> strs = "foo\tbar\t\tspam"
>>> re.split[r'\t+', strs]
['foo', 'bar', 'spam']
1

Để kiểm tra xem một đối tượng

>>> yas = "yas\t\tbs\tcda\t\t"
>>> re.split[r'\t+', yas.rstrip['\t']]
['yas', 'bs', 'cda']
5 có tồn tại độc lập với tệp hay thư mục hay không, hãy sử dụng
>>> yas = "yas\t\tbs\tcda\t\t"
>>> re.split[r'\t+', yas.rstrip['\t']]
['yas', 'bs', 'cda']
6

Bạn có thể tách [] một danh sách bằng Python không?

Phương thức tách chuỗi Python[] . Bạn có thể chỉ định dấu phân cách, dấu phân cách mặc định là bất kỳ khoảng trắng nào. Ghi chú. Khi maxsplit được chỉ định, danh sách sẽ chứa số phần tử đã chỉ định cộng với một. The split[] method splits a string into a list. You can specify the separator, default separator is any whitespace. Note: When maxsplit is specified, the list will contain the specified number of elements plus one.

Bạn có thể sử dụng tab trong Python không?

Tab Python cung cấp tính năng tự động hoàn thành để bạn có thể nhanh chóng kết thúc mã thông báo câu lệnh . Nếu bạn viết một phần mã thông báo nhưng không chắc chắn cách hoàn thành hoặc muốn điền mã thông báo tự động, hãy nhấn phím Tab trong khi con trỏ vẫn ở trong ngăn nhập liệu.

Bạn có thể chia nhiều thứ cùng một lúc Python không?

Phương pháp 1. Tách nhiều ký tự khỏi chuỗi bằng re. split[] Đây là phương pháp hiệu quả nhất và thường được sử dụng để chia nhiều ký tự cùng một lúc. Nó sử dụng regex [biểu thức chính quy] để làm điều này.

Chúng ta có thể chuyển nhiều dấu phân cách trong split[] Python không?

Tách chuỗi bằng nhiều dấu phân cách . Đối với điều này, chúng ta cần sử dụng mô-đun re của Python và nhập tệp re. chức năng tách []. We can also specify multiple characters as separators. For this, we need to make use of the re module of Python and import the re. split[] function.

Chủ Đề