>>test_str.split(',')['helloworld','nicetomeetyou']>> >test_str.split ('')[&"/> >>test_str.split(',')['helloworld','nicetomeetyou']>> >test_str.split ('')[&">

Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk memisahkan rentetan Python ke dalam senarai menggunakan berbilang pembatas

Bagaimana untuk memisahkan rentetan Python ke dalam senarai menggunakan berbilang pembatas

PHPz
PHPzke hadapan
2023-05-04 13:10:061792semak imbas

Rentetan Python mempunyai fungsi split secara lalai untuk membahagi rentetan kepada senarai:

>>> test_str = "hello world,nice to meet you"
>>> test_str.split(',')
['hello world', 'nice to meet you']
>>> test_str.split(' ')
['hello', 'world,nice', 'to', 'meet', 'you']

Apakah yang perlu saya lakukan jika saya mahu rentetan di atas dipecahkan kepada senarai berikut berdasarkan koma dan ruang di masa yang sama?

['hello', 'world', 'nice', 'to', 'meet', 'you']

Pada masa ini, perpecahan re is Ia boleh berguna, ia boleh menggunakan corak yang dipadankan dengan ungkapan biasa sebagai pemisah.

>>> import re
>>> test_str = "hello world,nice to meet you"
>>> re.split('[,| ]', test_str)
['hello', 'world', 'nice', 'to', 'meet', 'you']
>>> re.split('[, ]', test_str)
['hello', 'world', 'nice', 'to', 'meet', 'you']
>>> re.split(',| ', test_str)
['hello', 'world', 'nice', 'to', 'meet', 'you']

Malah, re.sub dan str.replace rentetan mempunyai kesan yang sama re.sub boleh menggantikan berbilang bahagian yang memenuhi padanan biasa pada masa yang sama, bukan sekadar rentetan tetap.

Tambahan: siri partition

Kaedah siri partition termasuk partition () dan rpartition () .
pembahagian () Membahagikan rentetan mengikut pemisah yang ditentukan (sep) Mulakan pengindeksan dari sebelah kiri rentetan dengan pemisah Hentikan pengindeksan apabila indeks dicapai, iaitu (kepala, sep, ekor).

# 遇到第一个分隔符后就停止索引
print(Str.partition('e'))
# 没有遇到分隔符 , 返回原字符串和两个空字符串
print(Str.partition('f'))
 
# 遇 到 第 一 个 分 隔 符 后 就 停 止 索 引
print(Str.rpartition('e'))
# 没 有 遇 到 分 隔 符 , 返 回 两 个 空 字 符 串 和 原 字 符 串
print(Str.rpartition('f'))

rpartition () berfungsi sama seperti partition (), kecuali ia mula membelah dari hujung rentetan.

Perbezaan antara kaedah siri split dan partition

方法

返回类型 是否包含分隔符
split 系列方法 list(列表)
partition 系列方法 tuple(元组)
Kaedah
Jenis pengembalian Sama ada ia mengandungi pembatas
kaedah siri pisah senarai (senarai) Tidak
Kaedah siri partition tuple (tuple) adalah

Atas ialah kandungan terperinci Bagaimana untuk memisahkan rentetan Python ke dalam senarai menggunakan berbilang pembatas. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam