TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #83 · 11 мај

У строки в Python есть два очень похожих метода. На столько похожих что кажется они делают одно и тоже. Это метод isdigit() и isnumeric() Давайте посмотрим зачем нам два одинаковых метода? И так ли они одинаковы? Очевидно что isdigit() говорит нам, состоит ли строка только из чисел 0-9 >>> '12'.isdigit() True >>> '12x'.isdigit() False >>> '-12'.isdigit() False >>> '12.5'.isdigit() False Можно предположить что isnumeric() делает более глубокий анализ и распознаёт в строке float или отрицательное число. >>> '15'.isnumeric() True >>> '-15'.isnumeric() False >>> '15.2'.isnumeric() False Нет, всё так же как и с другим методом. В чем же тогда разница? Для начала посмотрим следующие примеры: >>> '5'.isdigit(), '5'.isnumeric() # Обычная цифра 5 # True, True >>> '꧕'.isdigit(), '꧕'.isnumeric() # Яванская 5 # True, True >>> '෩'.isdigit(), '෩'.isnumeric() # Синхала 3 # True, True >>> '৩'.isdigit(), '৩'.isnumeric() # Бенгальская 3 # True, True >>> '༣'.isdigit(), '༣'.isnumeric() # Тибетская 3 # True, True >>> '³'.isdigit(), '³'.isnumeric() # 3 верхний индекс (степень) # True, True >>> '𝟝'.isdigit(), '𝟝'.isnumeric() # Математическая двойная 5 # True, True >>> '๔'.isdigit(), '๔'.isnumeric() # Тайская 4 # True, True >>> '➑'.isdigit(), '➑'.isnumeric() # 8 в круге # True, True А теперь примеры в которых, по мнению Python, результаты не равны >>> '¾'.isdigit(), '¾'.isnumeric() # дробь три четверти # False, True >>> '⅕'.isdigit(), '⅕'.isnumeric() # дробь одна пятая # False, True >>> '𒐶'.isdigit(), '𒐶'.isnumeric() # клинопись 3 # False, True >>> '三'.isdigit(), '三'.isnumeric() # 3 из унифицированной идеограммы # False, True >>> '⑩'.isdigit(), '⑩'.isnumeric() # цифра 10 в круге # False, True >>> 'Ⅳ'.isdigit(), 'Ⅳ'.isnumeric() # Римская 4 # False, True >>> '𑇪'.isdigit(), '𑇪'.isnumeric() # Сенегальская архаическая 10 # False, True >>> '𐌢'.isdigit(), '𐌢'.isnumeric() # Этрусская цифра 10 # False, True >>> 'ↂ'.isdigit(), 'ↂ'.isnumeric() # Римская цифра 10000 # False, True >>> '〇'.isdigit(), '〇'.isnumeric() # Символ ККЯ ноль # False, True Получается, что isdigit() говорит нам, является ли символ десятичной цифрой или спецсимволом, имеющим цифирное значение после преобразования. В свою очередь isnumeric() включает все дополнительные символы юникода которые имеют отношения к числовым и цифровым представлениям. Ну и пара примеров в которых в обоих случаях символ не является числом, это эмодзи. >>> '🕙'.isdigit(), '🕙'.isnumeric() # эмодзи 10 часов # False, False >>> '7️⃣'.isdigit(), '7️⃣'.isnumeric() # эмодзи 7 # False, False Также есть еще один дополнительный и весьма полезный метод isdecimal(). Он нам сообщает, можно ли из указанного символа сделать простую десятичную цифру. То есть сработает ли метод int(x) >>> '෩'.isdecimal(), int('෩') # Синхала 3 # True, 3 >>> '➑'.isdecimal(), int('➑') # 8 в круге # False, ValueError Какие выводы? 🔸 При определении цифры в строке isdigit() подходит лучше чем isnumeric(), но оба не гарантируют успешную конвертацию в int 🔸 Для однозначного определения возможности преобразования строки в int лучше подходит метод isdecimal() 🔸 Для однозначного определения символов 0...9 лучше использовать regex Полный список символов юникода которые определяются как numeric #basic

Hashtags

Резултати

Пронајдени 3 слични објави

Пребарај: #nuncamás

当前筛选 #nuncamás清除筛选
Club Atletico Boca Jrs.

@Bocajrsn1 · Post #34191 · 24.03.2026 г., 13:39

Boca Juniors ratifica su compromiso por mantener viva la memoria de los 30.000 desaparecidos que dejó la última dictadura militar en la Argentina. A 50 años del golpe cívico-militar, decimos #NuncaMás

Hashtags

EmbajadaRusaVen

@embajadarusaven · Post #2121 · 27.01.2025 г., 22:00

🕯️27 de enero: Día de la Memoria del Holocausto y la Liberación de Auschwitz El 27 de enero de 1945, las tropas del Ejército Rojo liberaron el campo de concentración de Auschwitz, un lugar que se convirtió en el símbolo del horror del Holocausto. Allí, los soldados soviéticos fueron testigos de una de las tragedias más atroces de la historia: el exterminio sistemático de millones de personas. En Auschwitz, los nazis asesinaron a más de 1,1 millones de personas, en su mayoría judíos, pero también prisioneros de guerra soviéticos, polacos, gitanos y otros grupos perseguidos. El campo era un lugar de sufrimiento inimaginable: cámaras de gas, trabajos forzados, experimentos médicos inhumanos y un sistema diseñado para destruir vidas y borrar identidades. La liberación de Auschwitz reveló al mundo el alcance del genocidio nazi. Los sobrevivientes, desnutridos y marcados para siempre por el trauma, dieron testimonio de los crímenes cometidos. Los soldados soviéticos que abrieron las puertas del campo no solo trajeron la libertad, sino que también dejaron expuesta la barbarie que el odio y la intolerancia pueden causar. Este día nos recuerda la importancia de mantener viva la memoria de las víctimas y los horrores del Holocausto para que tragedias como esta nunca vuelvan a ocurrir. #Victoria80 #DíaDeLaMemoria#Holocausto#Auschwitz#NuncaMás#Historia

Marx21.it

@marx21news · Post #9947 · 13.03.2026 г., 15:41

50 anni dal colpo di stato in Argentina: memoria e solidarietà oltre i confini A marzo, in Svizzera, Italia e Francia, la società civile si mobilita per ricordare le 30.000 vittime della dittatura (1976-1983) e denunciare il progetto negazionista di Milei, che oggi prova a smantellare Verità e Giustizia. Dalle dichiarazioni internazionali alle proiezioni, dai ricami collettivi ai dibattiti universitari: la memoria è viva, internazionalista e antifascista. “Mai più terrorismo di Stato. No al negazionismo. Sì alla solidarietà attiva.” ✊ Leggi l’articolo completo di Sergio Ferrari per approfondire. #NuncaMás#Argentina#MemoriaVerdadJusticia#24M#Antifascismo#SolidarietàInternazionale https://www.marx21.it/storia-teoria-e-scienza/memoria-antidittatoriale-solidarieta-anti-negazionista/