Làm thế nào để bạn xóa một chuỗi rỗng trong python?

Cách dễ nhất là hiểu danh sách để xóa các phần tử trống khỏi danh sách trong Python. Và một cách khác là sử dụng phương thức filter[]. Chuỗi trống "" không chứa ký tự nào và các phần tử trống có thể là Không có hoặc [ ], v.v.

Python xóa các phần tử trống khỏi danh sách Ví dụ

Mã ví dụ đơn giản

Sử dụng hiểu danh sách

Simp;e lặp qua danh sách và thêm các phần tử không trống

list1 = ['A', '   ', ' ', 'B', '            ', 'C']
res = [ele for ele in list1 if ele.strip[]]
print[res]

list2 = [1, 6, [], 3, [], [], 9]
res = [ele for ele in list2 if ele != []]
print[res]

đầu ra

Sử dụng phương thức filter[]

Chỉ cần lọc ra danh sách biểu mẫu phần tử Không có và trống

Nếu None được sử dụng làm đối số đầu tiên cho filter[], nó sẽ lọc ra mọi giá trị trong danh sách đã cho, đó là False trong ngữ cảnh boolean. Điều này bao gồm danh sách trống

list2 = [1, 6, [], 3, [], [], 9]

res = list[filter[None, list2]]
print[res]

đầu ra. [1, 6, 3, 9]

Sử dụng vòng lặp for để xóa các chuỗi rỗng khỏi danh sách

Lặp lại danh sách và kiểm tra xem mỗi chuỗi có phải là chuỗi rỗng không. Nếu nó không phải là một chuỗi rỗng, thì hãy thêm từng chuỗi không trống vào danh sách trống ban đầu bằng phương thức chắp thêm

list1 = ['A', '   ', ' ', 'B', '            ', 'C']

res = []
for i in list1:
    if i.strip[] != '':
        res.append[i]
print[res]


list2 = [1, 6, [], 3, [], [], 9]
res = []
for i in list2:
    if i:
        res.append[i]
print[res]

đầu ra

['A', 'B', 'C']
[1, 6, 3, 9]

Nếu bạn muốn loại bỏ mọi thứ “giả dối”, e. g. chuỗi trống, bộ dữ liệu trống, số không, bạn cũng có thể sử dụng

list2 = [x for x in list1 if x]

Hãy bình luận nếu bạn có bất kỳ nghi ngờ và đề xuất nào về chủ đề Danh sách Python này

Ghi chú. IDE. PyCharm 2021. 3. 3 [Phiên bản cộng đồng]

cửa sổ 10

Trăn 3. 10. 1

Tất cả các Ví dụ về Python đều nằm trong Python 3, vì vậy có thể nó khác với python 2 hoặc các phiên bản nâng cấp

Rohit

Bằng cấp về Khoa học Máy tính và Kỹ sư. Nhà phát triển ứng dụng và có kinh nghiệm về nhiều ngôn ngữ lập trình. Đam mê công nghệ & thích học hỏi kỹ thuật

Trong Python, lớp danh sách có hàm remove[]. Nó chấp nhận một phần tử làm đối số và loại bỏ lần xuất hiện đầu tiên của phần tử đã cho khỏi danh sách. Chúng tôi sẽ xóa tất cả các chuỗi trống khỏi danh sách bằng phương thức remove[]

Ở đây chúng tôi sẽ chạy một vòng lặp while, cho đến khi danh sách có bất kỳ chuỗi trống nào. Trong quá trình lặp, chúng tôi sẽ tiếp tục xóa một chuỗi trống khỏi danh sách bằng hàm remove[]. Cuối cùng, chúng tôi sẽ hiển thị danh sách cuối cùng

Thí dụ

quảng cáo

# Consider the list
listOfStrs = ["Welcome", "", "to", "", "thisPointer", ""]

# Actual List
print["Existing list-",listOfStrs]

# Remove empty strings from the above list
while "" in listOfStrs:
    listOfStrs.remove[""]

# Final List
print["List after removing empty strings: ",listOfStrs]

đầu ra

Existing list- ['Welcome', '', 'to', '', 'thisPointer', '']
List after removing empty strings:  ['Welcome', 'to', 'thisPointer']

Trong ví dụ này, danh sách có ba chuỗi rỗng. Chúng tôi đã xóa chúng bằng phương thức remove[]. Danh sách cuối cùng của chúng tôi không có chuỗi rỗng

Xóa các chuỗi trống khỏi danh sách các chuỗi bằng cách sử dụng tính năng Hiểu danh sách

Trong phương pháp này, chúng tôi sẽ lặp lại danh sách bằng cách sử dụng khả năng hiểu danh sách và sẽ chỉ chọn các chuỗi không trống từ danh sách

cú pháp

[elem for elem in listOfStrs if elem]

Ở đây, listOfStrs là danh sách có chuỗi. Chúng tôi đã sử dụng điều kiện if trong phần hiểu danh sách để bỏ qua các chuỗi rỗng. Khả năng hiểu danh sách sẽ cung cấp cho chúng tôi một danh sách mới chỉ với các chuỗi không trống

Thí dụ

Trong ví dụ này, chúng tôi đang có một danh sách có một số chuỗi trống. Chúng tôi sẽ xóa các chuỗi trống đó khỏi danh sách bằng cách sử dụng tính năng hiểu danh sách

listOfStrs = ["Welcome","","to","","thisPointer",""]

# Actual List
print["Existing list-", listOfStrs]

# Remove empty strings from list
listOfStrs = [elem for elem in listOfStrs if elem]

# Remove empty strings from the above list
print["List after removing empty strings: ", listOfStrs]

đầu ra

Existing list- ['Welcome', '', 'to', '', 'thisPointer', '']
List after removing empty strings:  ['Welcome', 'to', 'thisPointer']

Trong danh sách có ba chuỗi rỗng. Chúng tôi chỉ chọn các chuỗi không trống vào một danh sách mới bằng cách sử dụng Tính năng hiểu danh sách và gán nó trở lại biến ban đầu. Bây giờ danh sách cuối cùng không có chuỗi rỗng

Xóa các chuỗi rỗng khỏi danh sách các chuỗi bằng cách sử dụng phép nối []

Trong phương thức này, đầu tiên hãy nối các chuỗi trong danh sách bằng cách sử dụng hàm join[] của lớp chuỗi. Sử dụng một chuỗi khoảng trắng làm dấu phân cách trong khi nối các chuỗi trong danh sách. Sau đó, lại tách chuỗi thành một danh sách bằng hàm split[]. Theo mặc định, split[] sẽ sử dụng khoảng trắng làm dấu phân cách. Bây giờ danh sách được trả về sẽ không có chuỗi trống nào trong đó

Thí dụ

Trong ví dụ này, chúng tôi có một danh sách có một số chuỗi rỗng. Bây giờ chúng tôi sẽ xóa các chuỗi trống đó khỏi danh sách

listOfStrs = ["Welcome","","to","","thisPointer",""]

# Actual List
print["Existing list-", listOfStrs]

# Join strings in a list and again split them
# It will remove empty strings from list
listOfStrs = ' '.join[listOfStrs].split[]

# Remove empty strings from the above list
print["List after removing empty strings: ", listOfStrs]

đầu ra

Existing list- ['Welcome', '', 'to', '', 'thisPointer', '']
List after removing empty strings:  ['Welcome', 'to', 'thisPointer']

Trong listOfStrs, có ba chuỗi rỗng. chỉ chọn các chuỗi không trống vào danh sách mới bằng phương thức nối []. Bây giờ danh sách cuối cùng của chúng tôi không có chuỗi trống

Xóa các chuỗi rỗng khỏi danh sách các chuỗi bằng filter[]

Phương thức filter[] có thể lọc/xóa các chuỗi trống khỏi danh sách. Truyền Không làm tham số đầu tiên đại diện cho chuỗi trống

cú pháp

list[filter[None, listOfStrs]]

Phải mất hai tham số

  1. Không chỉ định một chuỗi rỗng
  2. listOfStrs là danh sách đầu vào có một số chuỗi trống

Nó lọc các chuỗi trống từ danh sách và chỉ trả về danh sách các chuỗi không trống

Thí dụ

Trong ví dụ này, chúng tôi có một danh sách với một số chuỗi rỗng. Bây giờ chúng ta sẽ xóa các chuỗi rỗng đó khỏi danh sách và đặt tất cả các phần tử chuỗi không rỗng vào một danh sách mới thông qua phương thức list[]

# Consider the list
listOfStrs = ["Welcome","","to","","thisPointer",""]

# Actual List
print["Existing list-", listOfStrs]

# It will filter/remove empty strings from list
listOfStrs = list[filter[None, listOfStrs]]

# Remove empty strings from the above list
print["List after removing empty strings: ", listOfStrs]

đầu ra

Existing list- ['Welcome', '', 'to', '', 'thisPointer', '']
List after removing empty strings:  ['Welcome', 'to', 'thisPointer']

Trong listOfStrs, có ba chuỗi rỗng. Hàm filter[] đã loại bỏ ba chuỗi rỗng này và trả về các chuỗi còn lại trong danh sách. Chúng tôi đã gán danh sách mới này cho biến danh sách ban đầu. Bằng cách này, danh sách của chúng tôi hiện không có chuỗi trống

Xóa các chuỗi rỗng khỏi danh sách các chuỗi bằng cách sử dụng len[] với remove[]

Các chuỗi rỗng có độ dài bằng 0. Vì vậy, chúng ta có thể kiểm tra độ dài của tất cả các chuỗi trong danh sách và loại bỏ các chuỗi có độ dài 0. Đối với điều đó, hãy lặp lại một bản sao của danh sách các chuỗi và đối với từng phần tử, hãy kiểm tra xem độ dài của nó có bằng 0 hay không. Nếu có, hãy xóa chuỗi đó khỏi danh sách ban đầu bằng phương thức remove[] của lớp danh sách

cú pháp

Existing list- ['Welcome', '', 'to', '', 'thisPointer', '']
List after removing empty strings:  ['Welcome', 'to', 'thisPointer']
0

Nếu bạn muốn xóa các phần tử khỏi danh sách trong khi lặp lại, thì trước tiên bạn nên tạo một bản sao của danh sách rồi lặp lại danh sách đó. Bởi vì trong quá trình lặp nếu chúng ta cố xóa các phần tử khỏi danh sách, thì việc lặp lại sẽ thất bại hoặc có thể dẫn đến hành vi không mong muốn. Vì vậy, hãy lặp lại một bản sao của danh sách và xóa các phần tử khỏi danh sách gốc

Danh sách. hàm remove[] chấp nhận một phần tử làm đối số và loại bỏ phần tử đó khỏi danh sách. Vì vậy, cú pháp trên sẽ xóa tất cả các chuỗi rỗng khỏi danh sách

Thí dụ

Trong ví dụ này, chúng tôi đang có một danh sách có một số chuỗi trống. Bây giờ chúng tôi sẽ xóa các chuỗi trống đó khỏi danh sách

Existing list- ['Welcome', '', 'to', '', 'thisPointer', '']
List after removing empty strings:  ['Welcome', 'to', 'thisPointer']
1

đầu ra

Existing list- ['Welcome', '', 'to', '', 'thisPointer', '']
List after removing empty strings:  ['Welcome', 'to', 'thisPointer']

Danh sách listOfStrs có ba chuỗi rỗng. Phương thức remove[] đã xóa tất cả các chuỗi có độ dài 0. Bây giờ bạn có thể xem danh sách cuối cùng không có chuỗi rỗng

Tóm lược

Chúng tôi đã thảo luận về năm cách để loại bỏ các chuỗi trống khỏi danh sách các chuỗi. Dựa trên yêu cầu, bạn có thể sử dụng bất kỳ phương pháp nào ở trên để xóa các chuỗi trống khỏi danh sách python hiện có. Thanks

Chủ Đề