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 слични објави

Пребарај: #otabekshavkatov

当前筛选 #otabekshavkatov清除筛选
Teach For Uzbekistan | Official

@teachforuzbekistan · Post #274 · 28.07.2025 г., 11:14

😎 Yozgi institutimiz mehmoni — O‘zbekiston Yoshlari Umumjahon Assotsiatsiyasi raisi, Otabek Shavkatov Sherzodovich! 🚀 Oʻtkazilgan samimiy uchrashuvda ishtirokchilarimiz WAYU raisi bilan bevosita muloqotda bo‘ldilar. Otabek Shavkatov yoshlar uchun yaratilgan global imkoniyatlar, ta’lim va ijtimoiy innovatsiyalar haqida qimmatli fikr-mulohazalar bilan o‘rtoqlashdi. 🌍 WAYU — World Association of Youth of Uzbekistan tashkiloti bo‘lib, xorijdagi vatandosh yoshlarning huquq va manfaatlarini himoyalash, ularni zamon bilan hamqadam bo‘lishga yetaklash, hamda ularni o‘zlarining vataniga bog‘liq ijtimoiy-tadbirkorlik va ta’lim loyihalariga jalb qilishni maqsad qilgan — 26+ davlatda vakolatxonalari mavjud, Toshkent shahrida bosh idorasi joylashgan nodavlat notijorat tashkilotdir. 🤝 Ushbu uchrashuv ishtirokchilarga o‘z maqsadlariga yanada yaqinlashish, o‘qituvchilik va liderlik yo‘llarini kengaytirish loyihalarini amalga oshirish uchun katta imkoniyat yaratdi. 💬💬💬🗣 😎 Our Summer Institute guest — Chairman of the World Association of Youth of Uzbekistan (WAYU), Otabek Shavkatov Sherzodovich! 🚀 During the sincere meeting held, our participants had the opportunity to directly interact with the WAYU Chairman. Otabek Shavkatov shared valuable insights on global opportunities created for youth, education, and social innovations. 🌍 WAYU — the World Association of Youth of Uzbekistan is a non-governmental, non-profit organization headquartered in Tashkent, with representative offices in more than 26 countries. It aims to protect the rights and interests of Uzbek youth abroad, help them keep pace with the times, and involve them in social-entrepreneurial and educational projects related to their homeland. 🤝 This meeting created a great opportunity for participants to get closer to their goals and to implement projects on teaching and leadership development. #TeachForUzbekistan#YozgiInstitut#WAYU#YouthAssociation#OtabekShavkatov#Ilhomlanamiz#YoshLiderlar#EducationForAll#GlobalYouth