amarao: (Default)
[personal profile] amarao
>>> a="1 2, 3".split([" ", ","])
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: must be str or None, not list

И весь питон такой. Казалось бы, ну батарейки? И где они?

Date: 2023-05-25 08:34 pm (UTC)
kondybas: (Default)
From: [personal profile] kondybas
>>> a="1 2, 3".split(" ,")

??

Еслишо, я не питонщик, чисто по наитию.

Date: 2023-05-26 06:41 am (UTC)
yurikhan: (Default)
From: [personal profile] yurikhan

Наитие неправильное. Тут в результате получится ['1 2', '3'], а ОП, видимо, хотел ['1', '2', '3']. Надо re.split(r'[ ,]+', '1 2, 3').

Date: 2023-05-26 10:49 am (UTC)
yurikhan: (Default)
From: [personal profile] yurikhan

Ну а как одним списком строк выразить разницу между «хочу разделять любыми строками из этого списка» и «хочу разделять любыми конкатенациями строк из этого списка»?

>>> re.split(r'[ ,]', '1 2, 3')
['1', '2', '', '3']

>>> re.split(r'[ ,]+', '1 2, 3')
['1', '2', '3']

Правильный API должен заставить программиста подумать об этом. In the face of ambiguity, refuse the temptation to guess.

Date: 2023-05-25 10:25 pm (UTC)
From: [personal profile] aklepatc
Простите, но это выглядит скорее как RTFM, а не как отсутствующие батарейки.

IMHO, конечно.

Date: 2023-05-26 06:55 am (UTC)
From: [personal profile] awkravchuk
Про re.split и rtfm уже выше в коментах написали, я же скажу, что в 2к23 за батарейками надо в Clojure, а не в пистон.

Profile

amarao: (Default)
amarao

December 2025

S M T W T F S
 12 3456
78910111213
14151617181920
212223242526 27
28293031   

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 7th, 2026 10:38 am
Powered by Dreamwidth Studios