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

Пребарај: #pricinganalyst

当前筛选 #pricinganalyst清除筛选
Data Science Jobs

@datasciencejobs · Post #2528 · 24.01.2025 г., 15:41

#vacancy#remote#dataanalyst#pricinganalyst#вакансия#удалённо Position: Pricing Data Analyst Company: Borzo (same day delivery service) Salary Range: up to 4500$ (negotiable) Employment is available in Armenia, Russia, India and Portugal. Work format: full-time, remote from any country About company Borzo is one of the biggest and most technologically advanced players in the global same-day delivery market. We provide unparalleled convenience to businesses and people, all the while creating millions of self-managed courier jobs. We strive to make delivery easier and cheaper than getting out of a house or office. We operate in multiple countries with India as the top priority, and already deliver more than 1,500,000 parcels monthly. To remain on the forefront of this promising, often surprising yet already highly competitive market, each day we have to learn more about our users than we knew yesterday and than our peers understand now. We are looking for experienced full-time Pricing Data Analyst to play a pivotal role in Borzo's growth journey. You will be working as a part of the Marketplace team with a functional reporting to the Lead of Analytics. Your mission will be to help the team to grow marketplace earnings and/or volumes within SLA constraints by continuously improving our base and dynamic pricing algorithms both for clients and couriers. What you will do • Build statistical, optimization, and machine learning models in base and dynamic pricing; • Design and execute experiments and interpret the results to draw detailed and actionable conclusions; • Help the team to find critical product/pricing problems, develop impactful hypotheses and recommend action plans. Required experience and skills • 3+ years experience as a Product Analyst, Data Analyst, or another type of data analysis-focused functions; • Experience in algorithm development and prototyping; • Successful application of base and dynamic pricing optimization models and algorithms; • Advanced proficiency in data interpretation (critical thinking, identifying biases or limitations, evaluating data source reliability, solid knowledge of statistics); • Proficiency in data manipulation (cleaning, transforming, and reshaping data, experience with Python); • Advanced SQL expertise (optimizing queries for performance, CTE, window functions); • English level B2. You will get • Opportunity to make a difference: you will influence company revenue directly; • No bureaucracy—direct communication with all stakeholders; • Flexible schedule: work at your convenience. No overtime; • Remote work or an office in any country of our presence; • Industry leaders in the company’s management; • Co-workers from 5 countries with diverse cultural backgrounds; • Competitive income with social benefits and medical insurance from day one; • Optional relocation to Portugal after 2+ years; • All necessary work equipment provided. tg: @rom4lk