Bạn có thể chuyển đổi một chuỗi thành một hàm trong python không?

Trong hướng dẫn ngắn này, hãy tìm cách chuyển đổi chuỗi thành danh sách trong Python. Chúng tôi xem xét tất cả các cách bạn có thể đạt được điều này cùng với ưu và nhược điểm của chúng

Mục lục - Chuyển đổi chuỗi thành danh sách trong Python

  • Chuyển đổi chuỗi thành danh sách trong Python
  • Giải pháp 1. Sử dụng Split()
  • Giải pháp 2. Sử dụng danh sách()
  • Hạn chế và Hãy cẩn thận

Chuyển đổi chuỗi thành danh sách trong Python

Chuyển đổi kiểu dữ liệu hoặc truyền kiểu trong Python là một cách rất phổ biến. Tuy nhiên, chuyển string thành list trong Python không đơn giản như chuyển int thành string hoặc ngược lại

Chuỗi có thể được chuyển đổi thành danh sách bằng list(). Chúng ta sẽ xem xét phương pháp này dưới đây. Tuy nhiên, trong phương thức này, Python sẽ không biết mỗi mục bắt đầu và kết thúc ở đâu, trả về một danh sách các ký tự. Do đó, Python cung cấp một số phương thức thay thế có thể được sử dụng để chuyển đổi một chuỗi thành một danh sách

Giải pháp 1. Sử dụng Split()

Phương thức split được sử dụng để tách một chuỗi dựa trên dấu phân cách đã chỉ định. Sau khi tách, nó trả về chuỗi đã tách trong một danh sách, sử dụng phương thức này, chúng ta có thể chuyển đổi chuỗi thành danh sách trong Python

cú pháp

string.split( delimiter, maxsplit)

Thông số

  • Dấu phân cách - Tùy chọn. Chỉ định dấu phân cách mong muốn để sử dụng khi tách chuỗi. Nếu để trống, khoảng trắng được coi là dấu phân cách
  • Maxsplit - Tùy chọn. Chỉ định có bao nhiêu phần chia để làm

Mã để chuyển đổi chuỗi thành danh sách trong Python

str_1 = "Hire the top 1% freelance developers"
list_1 = str_1.split()
print(list_1)

#Output:
#['Hire', 'the', 'top', '1%', 'freelance', 'developers']

Ghi chú. Vì không có đối số nào được chuyển dưới dạng dấu phân cách nên chuỗi được chia thành khoảng trắng

Bây giờ, hãy xem một ví dụ trong đó dấu phân cách được chỉ định

str_1 = "Hire-the-top-1%-freelance-developers"

list_1 = str_1.split("-")
print(list_1)

#Output:
#['Hire', 'the', 'top', '1%', 'freelance', 'developers']

Giải pháp 2. Sử dụng danh sách()

Như đã nói ở trên, phương thức này chuyển đổi một chuỗi thành một danh sách các ký tự. Do đó phương pháp này không được sử dụng khá thường xuyên. Tôi khuyên bạn chỉ nên sử dụng phương pháp này nếu bạn chắc chắn rằng danh sách phải chứa mỗi ký tự dưới dạng một mục và nếu chuỗi chứa một tập hợp các ký tự hoặc số không được chia bởi khoảng trắng. Nếu không, khoảng trắng cũng sẽ được coi là một ký tự và được lưu trữ trong danh sách

Mã để chuyển đổi chuỗi thành danh sách trong Python

str_1 = "Hire freelance developers"


list_1 = list(str_1.strip(" "))
print(list_1)

#Output:
['H', 'i', 'r', 'e', ' ', 'f', 'r', 'e', 'e', 'l', 'a', 'n', 'c', 'e', ' ', 'd', 'e', 'v', 'e', 'l', 'o', 'p', 'e', 'r', 's']

Chuyển đổi chuỗi thành danh sách trong Python - Suy nghĩ kết thúc

Phương thức split() là phương thức được đề xuất và phổ biến nhất được sử dụng để chuyển đổi chuỗi thành danh sách trong Python. Phương pháp này không có bất kỳ nhược điểm đáng kể. Mặt khác, phương pháp typecast không được khuyến nghị rộng rãi và chỉ được sử dụng khi đáp ứng các yêu cầu. Tuy nhiên, vui lòng thực hành cả hai phương pháp để tạo điều kiện hiểu rõ hơn về khái niệm này

Trong chương trình này, chúng tôi sẽ cố gắng chuyển đổi một chuỗi đã cho thành một danh sách, trong đó bắt gặp khoảng trắng hoặc bất kỳ ký tự đặc biệt nào khác, tùy theo lựa chọn của người dùng. Để làm điều này chúng ta sử dụng phương thức split() trong chuỗi

string.split("delimiter")

ví dụ

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']

Phương pháp số 1. Sử dụng phương thức split()

Phương thức split được sử dụng để tách các chuỗi và lưu trữ chúng trong danh sách. Phương thức tích hợp trả về danh sách các từ trong chuỗi, sử dụng “dấu phân cách” làm chuỗi phân cách. Nếu một dấu phân cách không được chỉ định hoặc là Không, một thuật toán phân tách khác sẽ được áp dụng. các khoảng trắng liên tiếp được coi là một dấu phân cách duy nhất và kết quả sẽ không chứa chuỗi trống ở đầu hoặc cuối nếu chuỗi có khoảng trắng ở đầu hoặc cuối

Ví dụ 1A

Python3




Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
4

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
7
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
8

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
9
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
0
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
2_______6_______3
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
4_______6_______5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
9
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
7
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
0

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

['Geeks', 'for', 'Geeks']
1

['Geeks', 'for', 'Geeks']
2_______6_______1
['Geeks', 'for', 'Geeks']
4

['Geeks', 'for', 'Geeks']
5
['Geeks', 'for', 'Geeks']
6

Đầu ra

['Geeks', 'for', 'Geeks']

Ví dụ 1B

Python3




Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
4

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
7
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
8

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
9
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
0
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
2_______6_______3
['Geeks', 'for', 'Geeks']
6
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
9
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
7
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
0

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

['Geeks', 'for', 'Geeks']
1

['Geeks', 'for', 'Geeks']
2_______6_______1
['A', 'B', 'C', 'D']
6

['Geeks', 'for', 'Geeks']
5
['Geeks', 'for', 'Geeks']
6

Đầu ra

['Geeks', 'for', 'Geeks']

Phương pháp số 2. Sử dụng cắt chuỗi

Python3




['A', 'B', 'C', 'D']
9

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
7
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
8

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
9
List of character is :  ['A', 'B', 'C', 'D']
4
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
List of character is :  ['A', 'B', 'C', 'D']
6

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
9
List of character is :  ['A', 'B', 'C', 'D']
8
List of character is :  ['A', 'B', 'C', 'D']
9
['G', 'e', 'e', 'k', 's']
0
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
['G', 'e', 'e', 'k', 's']
2

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
9
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
7
List of character is :  ['A', 'B', 'C', 'D']
4

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

['Geeks', 'for', 'Geeks']
1

['Geeks', 'for', 'Geeks']
2_______6_______1
['g', 'e', 'e', 'k', 's']
1

['Geeks', 'for', 'Geeks']
5
['Geeks', 'for', 'Geeks']
6

Đầu ra

['A', 'B', 'C', 'D']

Phương pháp số 3. Sử dụng lại. phương thức findall()

Nhiệm vụ này có thể được thực hiện bằng biểu thức chính quy. Chúng ta có thể sử dụng mẫu để khớp tất cả các bảng chữ cái và tạo danh sách với tất cả các phần tử được khớp.  

Python3




['A', 'B', 'C', 'D']
9

['g', 'e', 'e', 'k', 's']
5

['g', 'e', 'e', 'k', 's']
6
['g', 'e', 'e', 'k', 's']
7

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

['g', 'e', 'e', 'k', 's']
9

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
7
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
8

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
9
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
7
The converted list : 
 ['geeks', 2, 'for', 4, 'geeks', 3]
4_______90_______5
The converted list : 
 ['geeks', 2, 'for', 4, 'geeks', 3]
6

The converted list : 
 ['geeks', 2, 'for', 4, 'geeks', 3]
7

['Geeks', 'for', 'Geeks']
1

['Geeks', 'for', 'Geeks']
2_______6_______1
['g', 'e', 'e', 'k', 's']
1

['Geeks', 'for', 'Geeks']
5
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
03
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
04
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
05

Đầu ra

List of character is :  ['A', 'B', 'C', 'D']

Phương pháp #4. Sử dụng hiểu danh sách

Python3




Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
06_______6_______1
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
08

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
09
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
11_______5_______12
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
13
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
14
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
15

['Geeks', 'for', 'Geeks']
5
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
17

Đầu ra

['G', 'e', 'e', 'k', 's']

Phương pháp #5. Sử dụng hàm liệt kê

Python3




Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
06_______6_______1
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
20

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
09
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
11_______5_______12
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
25
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
14
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
27
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
28

['Geeks', 'for', 'Geeks']
5
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
17

Đầu ra

['g', 'e', 'e', 'k', 's']

Phương pháp #6. Sử dụng JSON

Python3




['g', 'e', 'e', 'k', 's']
6
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
32

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
34
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
36

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
38

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
40
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
42

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
43

['Geeks', 'for', 'Geeks']
5
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
03
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
46
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
47

Đầu ra

The converted list : 
 ['geeks', 2, 'for', 4, 'geeks', 3]

Phương pháp số 7. sử dụng ast. nghĩa đen

Python3




['g', 'e', 'e', 'k', 's']
6
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
49

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
51

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
52_______6_______1
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
36

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
57

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
40
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
60

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
5

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
62

['Geeks', 'for', 'Geeks']
5
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
64

['Geeks', 'for', 'Geeks']
5_______5_______03
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
67
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
68

Đầu ra

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
0

Phương pháp số 8. Sử dụng hàm lambda

Python3




Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
06_______6_______1
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
08

Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
09
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
1
Input : "Geeks-for-Geeks"
Output : ['Geeks', 'for', 'Geeks']
2
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
03
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
76
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
03
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
78
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
79
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
14
Input : "Geeks for Geeks"
Output : ['Geeks', 'for', 'Geeks']
81

Một hàm có thể nhận một chuỗi Python không?

Miễn là bạn ghi lại điều này đúng cách, yêu cầu người dùng chuyển một chuỗi vào đầu vào hàm sẽ không gây lo ngại hoặc vấn đề. Đây là tiêu chuẩn trong tất cả các hàm Python chấp nhận đầu vào chuỗi .

Hàm nào chuyển đổi chuỗi thành?

Hàm atoi() dùng để chuyển đổi chuỗi ký tự thành giá trị số nguyên. Hàm atoi() truyền chuỗi ký tự để trả về dữ liệu số nguyên.

Bạn có thể biến một chuỗi thành một biến Python không?

Chuỗi thành tên biến trong Python bằng hàm vars(). Thay vì sử dụng hàmlocals() và hàm globals() để chuyển đổi chuỗi thành tên biến trong python, chúng ta cũng có thể sử dụng hàm vars(). The vars() function, when executed in the global scope, behaves just like the globals() function.