Chia danh sách thành chuỗi python

Trong trường hợp đơn giản này, sau khi tách, các phần tử sẽ được ghi vào một chuỗi được phân tách bằng dấu phẩy, sau đó là khoảng trắng

', '.join [all_lang_lst]

đầu ra sẽ là

'R, Julia, Python, Haskell, Java, Javascript'

Tách danh sách theo điều kiện

Chúng tôi có thể muốn chia danh sách thành nhiều danh sách phụ dựa trên một điều kiện đơn giản

data_lang = ['R', 'Julia', 'Python']
other_lang = ['Java', 'Javascript', 'Haskell']
data_lst = []
other_lst = []

# divide the list values using comprehensions
data_lst = [x for x in all_lang_lst if x in data_lang]
other_lst = [x for x in all_lang_lst if x in other_lang]

#print the lists
print ["The data science related languages are:" + str[data_lst]]
print ["The other languages are: " + str[other_lst]]


Đây là đầu ra

The data science related languages are:['R', 'Julia', 'Python']
The other languages are: ['Haskell', 'Java', 'Javascript']

Ghi chú. như được hiển thị ở trên, chúng ta có thể sử dụng hàm join[] để chuyển đổi bất kỳ danh sách nào thành chuỗi

Tách danh sách Python theo chuỗi con

Theo cách tương tự, chúng ta có thể phân chia danh sách dựa trên việc phần tử của nó có chứa một chuỗi con cụ thể hay không. Chúng ta sẽ bắt đầu bằng cách định nghĩa một hàm

def splt_by_substrng [my_lst, my_str]:
    subs_lst = []
    subs_lst_other =[]
    for e in my_lst:
        if my_str in e:
            subs_lst.append[e]
        else:
            subs_lst_other.append[e]
    return subs_lst, subs_lst_other

Bây giờ chúng ta sẽ gọi hàm mà chúng ta vừa định nghĩa. Trong trường hợp của chúng tôi, chúng tôi muốn tách các ngôn ngữ lập trình chứa chuỗi con 'ja' thành một danh sách riêng. Hàm sẽ trả về hai danh sách

print["Here are the split lists: " + str[splt_by_substrng[all_lang_lst , "Ja"]]]

Kết quả sẽ là

Here are the split lists: [['Java', 'Javascript'], ['R', 'Julia', 'Python', 'Haskell']]

Tìm sự khác biệt giữa hai danh sách

Một cách khác để tách danh sách đơn giản bằng cách trừ. Chúng tôi có thể chuyển đổi danh sách của mình thành bộ Python và chỉ cần trừ chúng

Hàm tạo list[] xây dựng một danh sách trực tiếp từ một hàm có thể lặp lại và vì chuỗi có thể lặp lại nên bạn có thể tạo một danh sách từ nó bằng cách chuyển chuỗi tới hàm tạo danh sách

1

2

3

4

5

6

7

if __name__ == '__main__'.

 

    đầu vào = 'ABC'

 

    ký tự = danh sách[input]

    in[ký tự]            # ['A', 'B', 'C']

 

Tải xuống Chạy mã

2. Sử dụng chức năng str.split[]

Bạn có thể sử dụng str. hàm split[sep=None] trả về danh sách các từ trong chuỗi, sử dụng sep làm chuỗi phân cách.

Ví dụ: để tách chuỗi bằng dấu phân cách

'R, Julia, Python, Haskell, Java, Javascript'
0, bạn có thể thực hiện

1

2

3

4

5

6

if __name__ == '__main__'.

 

    s = '1-2-3'

    l = s. tách['-']

    in[l]    # prints ['1', '2', '3']

 

Tải xuống Chạy mã

 
Nếu sep không được chỉ định hoặc là

'R, Julia, Python, Haskell, Java, Javascript'
2, các lần chạy khoảng trắng liên tiếp được coi là một dấu phân cách.

1

2

3

4

5

6

if __name__ == '__main__'.

 

    s = '1 2 3'

    l = s. tách[]

    in[l]    # prints ['1', '2', '3']

 

Tải xuống Chạy mã

3. Sử dụng chức năng
'R, Julia, Python, Haskell, Java, Javascript'
3

Mô-đun shlex xác định hàm

'R, Julia, Python, Haskell, Java, Javascript'
4, tách chuỗi
'R, Julia, Python, Haskell, Java, Javascript'
5 bằng cú pháp giống như trình bao

Chủ Đề