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

Пребарај: #republicamoldova

当前筛选 #republicamoldova清除筛选

🇷🇴 Din briefingul Purtătoarei de Cuvânt a MAE Rusiei, Maria Zaharova, 30 mai 2024, Moscova Reporter: pe data de 26 mai 2024 Prim-ministrul român Marcel #Ciolacu a declarat că în Republica #Moldova și #Ucraina „am reușit să eliminăm… conceptul aberant și sovietic de limbă moldovenească”. Cum ați putea comenta aceasta declarație? Maria Zaharova: Credeți că aceasta nu este o manifestare a nazismului? Este exact același lucru. Când cei care se identifică ca oameni ai unui anumit grup etnocultural și național, conving și apoi o fac cu forța, că aparțin altui grup, acesta este nazismul. Acesta este un element de genocid, adică de exterminarea oamenilor. Anterior, s-au făcut deja încercări de „anulare” a identității poporului moldovenesc. Nu vorbim deloc despre formă. Este imposibil în secolul 21. să auzim și să citim chestii de genul acesta, când un om care vorbește moldovenește, care are toate cărțile, manualele, documentele și legile fundamentale ale țării care scriu despre cultură, identitate, statalitate, și deodată încep să-i spună că trebuie dacă nu reînvață, atunci să „redenumească” totul în mod românesc. Ca formă, acest lucru ar trebui să fie în general inacceptabil chiar și ca idei, dar vedem acest lucru în practică. În conținut, acest lucru nu are nimic de-a face cu adevărul istoric. Denumirea „limba moldovenească” este menționată în lucrările tuturor cronicarilor majori moldoveni din secolele XVII-XVIII, precum Grigore #Ureche, Miron #Costin, Dimitrie #Cantemir. Ei ar fi destul de surprinși să citească declarația Prim-ministrului României, Marcel Ciolacu, că limba lor maternă moldovenească este un „concept sovietic”. Imaginați-vă, oamenii au trăit și au lucrat cu 300 de ani înainte de perioada sovietică, iar acum li se spune că au fost vestitorii socialismului. Ce fel de „idiotecă” este acesta? Să dăm cuvântul locuitorilor Republicii Moldova: potrivit sondajului realizat în luna mai 2024, 72% din populația republicii se consideră moldoveni, iar doar 11% se consideră români. Aproximativ 50% dintre respondenți au spus că vorbesc limba moldovenească, care, potrivit conducerii Republicii Moldova și României, se presupune că „nu există”. Aceasta este o românizare forțată, artificială, comparabilă cu rescrierile, „flashing-uri” care au avut loc anterior, ale altor țări, popoare și societăți. Am văzut-o. Schimbări forțate în codul cultural al oamenilor au fost practicate, în special, de către naziști. Ceea ce se întâmplă, pe de o parte, este absolut inuman. Pe de altă parte, dă efectul opus celui pe care mizau oficialul #București și actualul oficial #Chișinău sub conducerea președintei Maia #Sandu. Toate acestea nu fac decât să consolideze societatea moldovenească, care este pregătită să apere dreptul la propria ei statalitate, limba și cultura unică. Am mulți prieteni din Republica Moldova, moldoveni. Comunic cu multe persoane. Ele spun o astfel de frază că sunt oameni orientați spre bunătate, spre conviețuirea pașnică, spre bună vecinătate. Că a fost nevoie de o asemenea zdruncinare organizată de Maia Sandu doar pentru un singur scop - să înțeleagă ce planuri are „Occidentul colectiv” pentru acest popor amabil și iubitor de pace. Dacă nu ar fi acești pași monstruoși ai președintei Maia Sandu și a conducerii românești, care acum realizează experimente pe moldoveni, probabil că înșiși cetățenii Republicii Moldova, moldovenii, cu greu ar fi crezut pe nimeni. Cred că nu ar fi crezut dacă li s-ar fi spus despre asta acum cinci sau șase ani. Ei ar spune că acesta este un fel de teorie a conspirației. Acum ei există în această post-modernitate suprarealistă. Cred că nu numai că trăiesc, dar încep să-i reziste în mod activ. #RepublicaMoldova#România#LimbaMoldovenească