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

Резултати

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

Пребарај: #hikoya

当前筛选 #hikoya清除筛选
Orif Tolib

@oriftolib · Post #4325 · 10.04.2025 г., 17:01

#hikoya Bo‘lgan gap Kecha institutga hujjat topshirgani bordim. O‘sha yerda Dildorani uchratdim. Yuragimning tub-tubidagi ismsiz dardlar qayta bosh ko‘tardi, uch yil oldingi sirli-sehrli xotiralar tasavvurimda asta-sekin jon­­landi. Go‘yo yam-yashillikka, nurga ko‘milgan moviy diyorga tushib qolganday edim. Biroq to‘satdan turgan shid­datli shamol hamma narsani ag‘dar-to‘ntar qilib yubordi, menga uch asrday tuyulgan uch yil mobaynida asrab-avaylab yurgan tuyg‘u-xayollarim o‘t tushgan so­mon g‘aramidek lahzada yonib kul bo‘ldi. Ulardan alam-iztirob kuligina qoldi, xolos… 🔗batafsil 📱Telegram📱Instagram 📱Veb-sayt📱Facebook

Hashtags

Suxrob Xurramov | Blog

@suxrobblog · Post #471 · 20.03.2025 г., 08:01

Bu hikoyani tushunganimda va amalda qoʻllaganimda daromadimda oʻzgarishlar boʻlgan Yuqoridagi hazil sifatida ulashilgan postdan keyin xabarlar kela boshlagani uchun bu postni yozishga qaror qildim. Quyidagi hikoyani diqqat bilan bir necha bor oʻqing: ... Ikki dehqon bugʻdoy ekishardi. Ikkalasi ham bir xil mehnat qilishadi, ter toʻkib ishlar ekan. Biroq ulardan biri unumsiz yerga ekib, arang noniga yetadigan hosil olarkan. Ikkinchisi esa unumdor yer topib, moʻl hosil oladi va yaxshi daromad qilarkan. Farq faqat shundaki: ikkinchisi qayerda ekishni bilardi. Bu hayotning har sohasiga tegishli, xatto, dizaynga ham. Koʻp dizaynerlar tinmay ishlashadi, lekin baʼzilari kuchini toʻgʻri yoʻnaltirib, boshqalardan bir necha barobar koʻproq daromad qiladi. Bu yerda tajriba boʻlishi yoki boʻlmasligini ahamiyati yoʻq... — Yaʼniki, mehnatning oʻzi yetarli emas, muhimi, qayerda va qanday yoʻnalishda mehnat qilishdir. Shu joyda toʻxtab oʻylab koʻring. Sizchi toʻgʻri joyda ekayapsizmi? @suxrobblog #hikoya#karyera#daromad