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

Резултати

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

Пребарај: #seminyak

当前筛选 #seminyak清除筛选
Bali News

@balinews · Post #45 · 13.05.2024 г., 12:15

Time to yourself🧘‍♀️ Indulge in a 45-minute grounding meditation, harmonising your being and cultivating a deep sense of peace and renewal within. 🗓️ Tomorrow, May 14 🕖 7 am - 7.50am 📍Seminyak, at Sunset Park Pool Bar, Level 4, Potato Head Studios Bookings via the link. @BaliNews #wheretogo#Seminyak

Bali News

@balinews · Post #36 · 05.05.2024 г., 10:32

🤠Annual Cinco De Mayo party at Motel Mexicola 🪩 Today from 6pm till the late night you can try to win IDR 10 million in Reggaeton Dancing Competition. 🍸 DJs, dancers and good vibes are expected in Seminyak tonight. @BaliNews #Seminyak#wheretogo

Bali News

@balinews · Post #25 · 26.04.2024 г., 10:50

🤕Two foreigners beat up the Pechalangs at a villa in Seminyak Kuta police have detained two US citizens, 26-year-old Aabed Attia and his older brother 30-year-old Zeyad Ahmed Attia. According to law enforcers, the Americans beat up two pechalangs (local vigilantes) at a rented villa in Seminyak after being reprimanded over loud music. The foreigners are now in a detention center, awaiting trial. @BaliNews #accidents#Kuta#Seminyak

Bali News

@balinews · Post #363 · 21.03.2025 г., 12:41

😱 А very impressive python crawled onto Seminyak beach for a rest yesterday 🐍 It was not allowed to rest, though – despite its status as a public beach, the snake was politely but firmly asked to leave. @BaliNews #places#incidents#Seminyak

Bali News

@balinews · Post #128 · 28.07.2024 г., 03:01

🏚Fire destroys 19 villas in Seminyak 📰 Detikbali reports the the blaze broke out overnight on Kayu Aya Street in the Amasya villa complex. The fight against the fire continued into the morning. The flames were so big that they were seen even from airplanes arriving in Bali. 🎍 Apparently, the reason is that the complex is mostly built in eco-style, a lot of materials such as bamboo and straw were used in the decoration and construction, and they are known to burn well. 💸 Damage from the fire is estimated at 12 billion rupees. 👮‍♂️ Ketut Sukadi, a spokesman for Denpasar police's public relations department, said: “The fire first appeared on the second floor of villa 9 of The Amasya Villas complex, then spread to villa 12. A total of 19 villas out of 20 were burned in the fire, only villa 5 was not burned.” There are no official reports on the cause of the fire or other details yet, authorities are still investigating the incident. @BaliNews #accidents#Seminyak#Denpasar