0

文字列を区切り記号で分割するときに存在する要素の数を確認する必要があります。

>>> x = "12342foo \t62 bar sd\t\7534 black sheep"
>>> a,b,c = x.split('\t')
>>> a,b,c,d = x.split('\t')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: need more than 3 values to unpack

try-exceptandif-else条件 (以下を参照) 以外に、区切られた文字列に X 個の要素があることを確認するにはどうすればよいですか?

>>> try:
>>>   a,b,c,d = x.split('\t')
>>> except:
>>>   raise KeyError('You need 4 elements after splitting the string')



>>> if len(x.split('\t')) == 4:
>>>   a,b,c,d = x.split('\t')
>>> else:
>>>   print "You need 4 elements after splitting the string"
4

2 に答える 2

0

によって生成されたリストの長さを取得することもできますsplit

>>> x = "12342foo \t62 bar sd\t\7534 black sheep"
>>> len(x.split('\t'))
4
于 2013-10-16T08:20:58.307 に答える