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

Резултати

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

Пребарај: #kriss

当前筛选 #kriss清除筛选

Incheon mezbonligidagi APMP 41-yig‘ilishi: O‘zbekiston delegatsiyasi faol ishtirok etmoqda 🔄 O'zbekiston texnik jihatdan tartibga solish agentligi huzuridagi O‘zbekiston milliy metrologiya instituti vakillari Osiyo–Tinch okeani metrologiya dasturi (APMP) Bosh Assambleyasining 41-yig‘ilishida, shuningdek Davlat metrologiya muassasalarining Yevro–Osiyo hamkorligi (COOMET) tashkiloti nomidan ishtirok etmoqda. 📍Nufuzli anjuman 2025 yil 21–28 noyabr kunlari Koreya Respublikasining Incheon shahrida, Koreya o‘lchovlar va ilmiy-tadqiqot instituti (Korea Research Institute of Standards and Science – KRISS) tomonidan tashkil etilmoqda. ✍️ Bu xalqaro tadbirda O'zbekiston milliy metrologiya instituti hodimlari metrologiyaning akustika, massa, elektr, uzunlik, harorat, sarf, fotometriya, kimyo, ionlantiruvchi nurlanish, vaqt va chastota yo‘nalishlari hamda sifat tizimi bo‘yicha texnik qo‘mitalar yig‘ilishlarida faol ishtirok etdi. ✅Ushbu yig‘ilishda ishtirok etish orqali O‘zMMI mutaxassislari turli yo‘nalishlardagi eng so‘nggi yutuqlar, metodikalar va xalqaro talablar bilan tanishdilar va o'z yo'nalishlari bo'yicha taqdimotlar taqdim etdilar. ✅ Ma'lumot uchun: Hozirgi kunga kelib, O‘zMMI APMP doirasida BIPM bazasida ro‘yxatga olingan 3 ta (akustika va tebranish, uzunlik, hajm) solishtirish loyihalarida ishtirok etmoqda, shu bilan birga 2025 yil davomida NIM (China)da – 11 nafar NIMT (Tailand)da – 5 nafar KRISS (Koreya)da – 3 nafar mutaxassislar malakasi oshirildi. 🎖️ Tadbir doirasida KRISSning 50 yillik faoliyati, shuningdek, Metrik konvensiya qabul qilinganligining 150 yilligi ham tantanali ravishda nishonlanadi. 📈 Ushbu yirik xalqaro tadbirga qatnashish massa, ionlovchi nurlanish, elektr va magnetizm, bosim, uzunlik, fotometriya, vaqt va chastota o‘lchash yo‘nalishlarida tashkil etilishi rejalashtirilgan yangi solishtirish loyihalarda ishtirok etish imkonyatini beradi. ❗️ Mazkur anjumanda O‘zMMI vakillarining ishtiroki Germaniya Fizik-texnik instituti (PTB)ning “Milliy sifat infratuzilmasini rivojlantirish” loyihasi doirasida qo‘llab-quvvatlanmoqda. 📰 Shuningdek, ta'kidlash joizki, APMP rasmiy veb-saytida O‘zMMI ning joriy yildagi faoliyati xalqaro jamoatchilikka “Highlights of Recent Activities at UzNIM” nomli maqola orqali taqdim etildi. (https://www.apmpweb.org/portal/article/index/cid/16/id/1336.html). #UzNIM#APMP#KRISS#COOMET#Metrology#APMP_GA_2025 🌐standart.uz | Facebook | Instagram | YouTube