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

Пребарај: #liciogelli

当前筛选 #liciogelli清除筛选
Savino Balzano

@savinobalzano · Post #723 · 12.08.2024 г., 16:44

https://x.com/SavinoBalzano/status/1823033087023878315?t=_YbyQYq1eRqdqs1kVbEY8Q&s=19 Giuseppe Conte torna alla carica con la nenia lacrimosa sul #SalarioMinimoLegale. I salari italiani perdono potere d'acquisto, siamo fanalino d'#Europa, e il #Governo è insensibile al lamento di dolore di tanti italiani. Certo, moltissimi nei commenti gli domandano come mai una legge del genere, assai semplice nella sua struttura rispetto ad altri provvedimenti, non l'abbia varata lui quando era a Palazzo Chigi. I salari andavano bene? Direi di no. Quindi era insensibile anche lui quando guidava l'esecutivo? Cita #Brunetta, per infangare la posizione del Governo, e ha gioco facile: in effetti vederlo a capo del Consiglio Nazionale dell'Economia e del Lavoro mi fa sanguinare gli occhi (parliamo di uno che aggrediva verbalmente un contestatore solo in quanto lavoratore dipendente). Per non ricordare tanti e tanti altri aneddoti che ne tracciano una figura davvero sgradevole, da ogni punto di vista. Però è una furbata: è come quando dicono che certa roba non va bene perché era nel programma di #LicioGelli. È un espediente retorico vuoto, privo di argomentazioni. Il #SalarioMinimo è una misura che inciderebbe su una parte assai marginale di retribuzioni (rischiando, da sola, di fare più danni che altro): a perdere potere d'acquisto, invece (come lo stesso #Conte peraltro scrive senza rendersi conto della contraddizione), sono tutte le retribuzioni, di quasi ogni settore, la stragrande maggioranza delle quali è ben oltre la soglia che si vorrebbe introdurre. Il problema è sistemico, strutturale, frutto di scelte sbagliate compiute in decenni e decenni: davvero pensa che un disastro del genere lo si metta a posto con una leggina sul salario minimo? Il salario minimo fissato per legge non interviene sulle ragioni profondissime del problema. Somministrare la morfina a uno che si è rotto il femore produce giovamento, ma lo aiuterà a riprendere a correre? E un tempo le nostre retribuzioni correvano eccome e, vi svelo un segreto, non c'era una legge sul salario minimo. È risibile, fumo negli occhi, non si interverrebbe minimamente sulle cause reali, strutturali, che hanno comportato il disastro: in primis politiche economiche regressive, austere, imposte dalle tecnocrazie eurounitarie, che hanno fatto esplodere la disoccupazione. La disoccupazione ha comportato una perdita di potere contrattuale della comunità del lavoro, dell'offerta di lavoro nel mercato: con conseguente perdita di valore del prodotto, il lavoro, e di potere contrattuale dei produttori, i lavoratori. Ha inciso anche sulla capacità di presidiare i diritti acquisiti, difatti è esplosa la precarietà. Essa ha reso ricattabili le persone e reciso il rapporto tra lavoro e democrazia di cui all'art. 1 della Costituzione, tarpando le ali alle dinamiche rivendicative, anche salariali. Durante l'esperienza di governo giallo-verde, pare che lo avesse chiaro in testa: varò il #DecretoDignità, un ottimo inizio per invertire la rotta e sistemare tutti i danni che il suo principale alleato, il #PD, ha arrecato al mondo del lavoro, sostenendo le follie dell'#UE e precarizzando come non ci fosse un domani (nel silenzio o quasi della #CGIL, che al tempo non voleva disturbare il partito di governo, col quale peraltro la Segreraria Generale si sarebbe candidata per approdare in Parlamento. Le coincidenze di tale Camusso, che però restano interessanti perché dubito che vedremo Landini in futuro nelle liste di #FDI o della #Lega). Il problema è però proprio nel nuovo corso di #GiuseppeConte: oggi non può proprio permettersi di irritare la premier (che Dio non voglia!!!) di un suo eventuale nuovo governo, #EllySchlein. Caro Giuseppe, lo sai che le cose stanno così: un tempo eri tu a parlare di sovranità e popolo e fa davvero pena questo atteggiamento, questa specie di severa postura, che in realtà è genuflessione.