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

Пребарај: #ptcafe

当前筛选 #ptcafe清除筛选
PT风向旗

@Ptfxq · Post #452 · 28.09.2023 г., 11:31

国庆中秋双节快乐!这里总结了各内站的双节活动,排序为 Tag 首字母顺序。同时也欢迎你在评论区补充相关信息,若需删除信息,请通过投稿 bot 联系。 #Audiences#站免#开放邀请 2023-10-01 00:00:00 至 23:59:59(GMT+08:00) 全站免费;2023-09-29 00:00:00 至 2023-10-03 23:59:59(GMT+08:00) 官种免费;邀请购买权限下放至(步履不停)Insane User,发送权限下放至(江湖兒女)Elite User;站内公告贴出官方活动帖; #BTSchool#站免#开放注册 2023.09.29 至 2023.10.01 开放自由注册;2023.10.02 至 2023.10.06 站免 #CarPt#站免#开放注册 2023.09.29至2023.10.06 网站开放自由注册8天,全站种子FREE;为全站用户发送了 80000 魔力值。 #CHDBits#站免 9.29 至 10.3站免 #Dajiao#站免#开放邀请 2023年9月29日 00:00 至 2023年10月7日 23:59 站免;自公告发布起,至2023年10月7日23:59止,临时邀请价格下调为500/个,邀请权限下放至Power User;TG 官方群组抽奖活动。【每日奖】5W魔力*5,【特别奖】自选勋章*1 (9月29日,10月1日单独增设)中奖者在【翩翩红叶舞蕉妹?】【10月新增勋章】中自行挑选一个。 #FreeFarm#站免#其他活动 活动一:邀请小能手,9.29日前注册用户皆可参加。临时邀请降价为100魔力(9.29-10.6) 邀请规则:通过正常渠道邀请注册用户。不违背PT原则,如:没经过对方同意邮箱强发邀请,直接树状封禁 奖励说明:邀请5人奖励彩虹ID一年,邀请10人奖励VIP一年,邀请前五用户奖励永久VIP+永久彩虹ID 活动二:千万魔力顶置! 活动规则:9月28日23点59分,站点会顶置一条千万魔力的种子,9条百万魔力的种子! 请注意盒子最大上传为3倍! 活动三:站免8天(9.29-10.6) 活动四:8天连续签到(9.29-10.6),奖励魔力值1888888 #FSM#站免#开放注册 09.22 至 10.15 站免;于站庆(09.22)、中秋(09.29)、国庆(10.01)当天开注 #Hares#站免 2023年9月29日00:00 至 2023年10月7日00:00 站免 #HDfans#开放注册#站免#2x 从公告发布起,开放自由注册、邀请权限和购买邀请下放至user,开放勋章购买、开放幸运大抽奖,2023年10月6号22点关闭;活动期间,发布种子的魔力值提升到500每种;中秋当天至2023年10月6号22点开启站点2*free。 #HDHome#站免#开放邀请 2023.09.29日 18:00:00 至 2023-10-03日 18:00:00 站免; 2023-09-28日18:00:00至2023-10-05日18:00:00下调邀请权限至Veteran User #HDSky#站免#开放邀请 9月29日0时 至 10月3日24时 站免; 9月29日0时 至 10月1日24时开放终身影帝及 VIP 以上等级邀请系统;9月29日0时 至 10月7日24时,累计捐赠达3次会员可享永久vip六折捐赠活动 #HDDolby TG活动:9.28-10.6每晚8点TG群抽奖,奖品每天一个UID+海量鲸币。 #HDFun#站免 2023.09.28 上午9点 至 2023.10.07 下午18点 站免 #HDmayi#站免 09.29日0:00 至 10.05日23:59 站免 #HDVideo#站免 9.29日00:00:00 至 10.7日23.59.59 站免 #HHanclub#站免#开放邀请 2023年9月27日20:00:00 至 2023年10月5日00:00:00 站免;2023年10月01日00点00分 至 2023年10月3日00:00:00 开放Crazy User(明姿憨憨)及以上等级邀请权限 #OKPT#开放邀请 开启本站点的邀请功能(延续时间待定);每人发放10枚临时邀请码(有效期15天);每人发放1W魔力;Crazy User以上等级每人额外发放5枚邀请码;Crazy User以上等级每人额外发放1W魔力。 #OurBits#站免 09.28日17:00:00 至 10.04日00:00:00站免 #PTCafe#开放注册 网站在9月28日至9月30日开放注册3天 #PTerhttps://t.me/Pterclub_News/56 #PTHome#站免 【UTC+8:00】2023年09月29日 00:00:00 至【UTC+8:00】2023年10月02日 00:00:00 站免 #SSD#站免#开放邀请 2023年10月01日20点00分 至 2023年10月4日20点00分 站免;站免期间下放邀请等级至骨灰;其他小型活动会于论坛或官群中随性举办 #TLFBits#站免 UTC+8 2023-09-29 00:00 至 2023-10-02 23:59 站免 #ZHUQUE#站免 09-28 18:00 至 10-01 18:00 全站 1.5x 上传 0x 下载;10-01 18:00 至 10-10 18:00 全站 1x 上传 0x 下载 #ZMPT#站免 上架节日勋章;站免截止到10.3日晚上12点。 #2xfree#开放邀请 9月28日零时~10月3日零时开放邀请。 #HDB 为庆祝国庆,HDB 的 PTP 邀请被撤下,其他站的官邀恐怕也会争相效仿,想要进的请尽快申请 频道:@ptfxq