Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk menukar rentetan untuk ditetapkan dalam Python

Bagaimana untuk menukar rentetan untuk ditetapkan dalam Python

王林
Lepaskan: 2023-05-05 23:52:05
ke hadapan
2445 orang telah melayarinya

Tukar rentetan kepada koleksi dalam Python

Gunakan kelas set() untuk menukar rentetan kepada koleksi, seperti my_set = set(my_str). Kelas set() akan menukar rentetan kepada koleksi dengan memisahkan aksaranya.

my_str = 'one'

# ✅ 通过拆分字符将字符串转换为集合
my_set = set(my_str)
print(my_set)  # ????️ {'n', 'o', 'e'}

# ----------------------------------------------------

# ✅ 将字符串转换为不拆分字符的集合

my_set = set([my_str])
print(my_set)  # ????️ {'one'}

# ----------------------------------------------------

# ✅ 将字符串转换为具有多个元素的集合

my_str = 'one,two,three'

my_set = set(my_str.split(','))
print(my_set)  # ????️ {'one', 'two', 'three'}

# ----------------------------------------------------

# ✅ 将字符串转换为具有多个整数元素的集合

my_str = '1,2,3'

my_set = set(int(item) for item in my_str.split(','))
print(my_set)  # ????️ {1, 2, 3}
Salin selepas log masuk

Bagaimana untuk menukar rentetan untuk ditetapkan dalam Python

Contoh pertama menggunakan kelas set() untuk menukar rentetan kepada objek koleksi dengan membelah aksara.

my_str = 'one'

my_set = set(my_str)
print(my_set)  # ????️ {'n', 'o', 'e'}
Salin selepas log masuk

Setiap aksara dalam rentetan menjadi elemen koleksi yang berasingan.

Kaedah yang sama boleh digunakan jika kita perlu menukar rentetan kepada set integer.

my_str = '123'

my_set = set(int(digit) for digit in my_str)
print(my_set)  # ????️ {1, 2, 3}
Salin selepas log masuk

Kami menggunakan ungkapan penjana untuk mengulangi rentetan.

Ekspresi penjana digunakan untuk melaksanakan beberapa operasi pada setiap elemen atau memilih subset elemen yang memenuhi syarat.

Dalam setiap lelaran kami menukar nombor semasa kepada integer dan mengembalikan hasilnya.

Sebagai alternatif, kita boleh menghantar senarai ke kelas set().

Untuk menukar rentetan kepada koleksi tanpa memisahkan aksara rentetan, hantar senarai yang mengandungi rentetan ke kelas set(), seperti my_set = set([my_str]). Koleksi akan mengandungi rentetan sebagai elemen individunya. Kelas

my_str = 'one'
my_set = set([my_str])
print(my_set)  # ????️ {'one'}
Salin selepas log masuk

set() menerima parameter boleh lelar pilihan dan mengembalikan objek koleksi baharu yang unsur-unsurnya diambil daripada objek boleh lelar.

empty_set = set()
print(empty_set) # ????️ set()

my_set = set(['one', 'two', 'three'])
print(my_set) # ????️ {'three', 'two', 'one'}
Salin selepas log masuk

Jika anda perlu membelah rentetan pada pembatas untuk mencipta objek koleksi, gunakan kaedah str.split().

my_str = 'one,two,three'

my_set = set(my_str.split(','))
print(my_set)  # ????️ {'one', 'two', 'three'}
Salin selepas log masuk

Kami menggunakan kaedah str.split() untuk memisahkan rentetan pada setiap koma dan menghantar hasilnya kepada kelas set() untuk mencipta objek koleksi. Kaedah

my_str = 'one,two,three'

print(my_str.split(',')) # ????️ ['one', 'two', 'three']
Salin selepas log masuk

str.split() membahagikan rentetan kepada senarai subrentetan menggunakan pembatas.

Kaedah ini mengambil 2 parameter berikut:

  • pemisah Pisahkan rentetan kepada subrentetan setiap kali pemisah berlaku

  • < . rentetan ke dalam satu atau lebih aksara ruang putih.
  • Jika pembatas tidak ditemui dalam rentetan, mengembalikan senarai yang mengandungi hanya 1 elemen.

    Jika kita perlu membahagikan rentetan kepada koleksi yang mengandungi unsur integer, kita boleh menggunakan ungkapan penjana.
  • my_str = &#39;1,2,3&#39;
    
    my_set = set(int(item) for item in my_str.split(&#39;,&#39;))
    print(my_set)  # ????️ {1, 2, 3}
    Salin selepas log masuk
Kami menggunakan ungkapan penjana untuk mengulangi senarai dan menggunakan kelas
untuk menukar setiap item kepada integer. Objek

str.split()

mengandungi unsur integer.

Sambungan: Tukar rentetan kepada tatasusunan dalam Python

Gunakan kaedah

untuk menukar rentetan kepada tatasusunan, mis. Kaedah

akan membahagikan rentetan kepada senarai setiap kali pembatas yang disediakan berlaku. int()

string = &#39;www,jiyik,com&#39;

# ✅ 将逗号分隔的字符串转换为数组
array = string.split(&#39;,&#39;)
print(array)  # ????️ [&#39;www&#39;, &#39;jiyik&#39;, &#39;com&#39;]

# ---------------------------------------------

# ✅ 将空格分隔的字符串转换为数组
string = &#39;www jiyik com&#39;
array = string.split(&#39; &#39;)
print(array)  # ????️ [&#39;www&#39;, &#39;jiyik&#39;, &#39;com&#39;]

# ---------------------------------------------

# ✅ 将字符串转换为字符数组

string = &#39;jiyik&#39;
array = list(string)
print(array)  # ????️ [&#39;j&#39;, &#39;i&#39;, &#39;y&#39;, &#39;i&#39;, &#39;k&#39;]

# ---------------------------------------------

# ✅ 将字符串转换为整数数组

string = &#39;1,2,3&#39;
array = list(int(char) for char in string.split(&#39;,&#39;))
print(array)  # ????️ [1, 2, 3]

# ---------------------------------------------

# ✅ 将字符串转换为单元素数组
string = &#39;jiyikcom&#39;

array = [string]
print(array) # ????️ [&#39;jiyikcom&#39;]
Salin selepas log masuk

set

Kami menggunakan kaedah

untuk menukar rentetan kepada tatasusunan.

kaedah str.split() membahagikan rentetan kepada senarai subrentetan menggunakan pembatas. str.split()array = string.split(&#39;,&#39;)Kaedah ini mengambil 2 parameter berikut: str.split()

Bagaimana untuk menukar rentetan untuk ditetapkan dalam Python

pemisah

Pisahkan rentetan kepada subrentetan setiap kali pemisah berlakustr.split()

maxsplit

Selesaikan pemisahan maksimum paling banyak (pilihan)
  • Ini ialah rentetan yang dipisahkan koma kepada Contoh tatasusunan. Kaedah

    string = &#39;www,jiyik,com&#39;
    
    array = string.split(&#39;,&#39;)
    print(array)  # ????️ [&#39;www&#39;, &#39;jiyik&#39;, &#39;com&#39;]
    
    string = &#39;www,jiyik,com&#39;
    
    array = string.split(&#39;,&#39;)
    print(array)  # ????️ [&#39;www&#39;, &#39;jiyik&#39;, &#39;com&#39;]
    Salin selepas log masuk

  • membelah rentetan setiap kali koma muncul.
  • Jika kita perlu menukar rentetan kepada tatasusunan perkataan, panggil kaedah tanpa sebarang parameter.

    string = &#39;www jiyik com&#39;
    array = string.split()
    print(array)  # ????️ [&#39;www&#39;, &#39;jiyik&#39;, &#39;com&#39;]
    Salin selepas log masuk

    Apabila tiada pembatas dihantar ke kaedah
  • , ia memisahkan rentetan input kepada satu atau lebih aksara ruang putih.

Jika pembatas yang disediakan tidak ditemui dalam rentetan, mengembalikan senarai yang mengandungi hanya 1 elemen.

Jika anda perlu menukar rentetan kepada tatasusunan aksara, gunakan kelas str.split().

string = &#39;jiyik&#39;
array = list(string)
print(array)  # ????️ [&#39;j&#39;, &#39;i&#39;, &#39;y&#39;, &#39;i&#39;, &#39;k&#39;]
Salin selepas log masuk

Kelas senarai menerima objek boleh lelar dan mengembalikan objek senarai. str.split()

Jika kita mempunyai perwakilan rentetan tatasusunan dan perlu menukar rentetan itu kepada senarai sebenar, gunakan kaedah

. str.split()

from ast import literal_eval

my_str = &#39;[1,2,3,4]&#39;


my_list = literal_eval(my_str)
print(my_list)  # ????️ [1, 2, 3, 4]
print(type(my_list))  # ????️ <class &#39;list&#39;>
Salin selepas log masuk

Jika kita perlu menukar rentetan kepada senarai integer, gunakan ungkapan penjana.

string = &#39;1,2,3&#39;
array = list(int(digit) for digit in string.split(&#39;,&#39;))
print(array)  # ????️ [1, 2, 3]
Salin selepas log masuk
Kami menggunakan ungkapan penjana untuk mengulangi senarai yang diperoleh daripada kaedah

. list()

Ekspresi penjana digunakan untuk melaksanakan beberapa operasi pada setiap elemen atau memilih subset elemen yang memenuhi syarat.

ast.literal_eval()Dalam setiap lelaran, kami menggunakan kelas

untuk menukar nombor semasa kepada integer.

Atas ialah kandungan terperinci Bagaimana untuk menukar rentetan untuk ditetapkan dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan