Как добавить ведущие нули в строки в Pandas
Вы можете использовать следующий синтаксис для добавления начальных нулей к строкам в кадре данных pandas:
df['ID'] = df['ID'].apply('7> '. format )
Эта конкретная формула добавляет столько начальных нулей, сколько необходимо, к строкам в столбце с заголовком «ID», пока каждая строка не будет иметь длину 7 .
Не стесняйтесь заменить 7 другим значением, чтобы добавить другое количество начальных нулей.
В следующем примере показано, как использовать этот синтаксис на практике.
Пример: добавление начальных нулей к строкам в Pandas
Предположим, у нас есть следующий кадр данных pandas, который содержит информацию о продажах и возвратах для различных магазинов:
import pandas as pd #create DataFrame df = pd.DataFrame() #view DataFrame print(df) ID sales refunds 0 A25 18 1 1 B300 12 3 2 C6 27 3 3 D447289 30 2 4 E416 45 5 5 F19 23 0
Обратите внимание, что длины строк в столбце «ID» не все равны.
Однако мы видим, что самая длинная строка состоит из 7 символов.
Мы можем использовать следующий синтаксис для добавления начальных нулей к строкам в столбце «ID», чтобы каждая строка имела длину 7 :
#add leading zeros to 'ID' column df['ID'] = df['ID'].apply('7> '. format ) #view updated DataFrame print(df) ID sales refunds 0 0000A25 18 1 1 000B300 12 3 2 00000C6 27 3 3 D447289 30 2 4 000E416 45 5 5 0000F19 23 0
Обратите внимание, что к строкам в столбце «ID» добавлены начальные нули, так что теперь каждая строка имеет одинаковую длину.
Примечание.Полную документацию по функции применения в pandas можно найти здесь .
Дополнительные ресурсы
В следующих руководствах объясняется, как выполнять другие распространенные задачи в pandas:
Как убрать незначащие нули в python
>>> print(format(n, ’03’)) # python >= 2.6
>>> print(».format(n)) # python >= 2.6
>>> print(».format(foo=n)) # python >= 2.6
>>> print(».format(n)) # python >= 2.7 + python3
>>> print(».format(n)) # python 3
- Закодировать файл в base64 на Python
- Рекурсивное создание директорий в Python
- Сортировка в Python
- Правильно добавить год/месяц к дате в Python
- Отформатировать дату в Python
- Получить рабочую директорию и директорию со скриптом в Python
- Копия объекта в Python
- Время выполнения программы на Python
- Конвертировать datetime.timedelta в строку
- Парсинг даты в Python
- Конвертировать строку (str) в булевый тип (bool) в Python
- Получить местный часовой пояс в Python
- Проверить, что строка соответствует регулярному выражению в Python
- Просмотреть доступные версии модулей в PIP
- Получить целочисленный Unix timestamp в Python
- getter и setter в Python
- Настроить формат вывода логов в Python
- Получить переменную окружения в Python
- Обновить пакет в PIP
- Получить имя (хостнейм) машины из Python
- Вывести стэк вызовов при возникновении исключения в Python
- Функция eval в Python
- Дозаписывать (append) в файл в Python
- Препроцессинг кода в Python
- Проверить, что программа установлена из Python
- Настроить путь для импорта библиотек в Python
- Получить размер терминала в символах в Python
- Enum с дополнительными полями в Python
- Ошибка invalid command ‘bdist_wheel’ при установке пакета через PIP
- Получить список аргументов функции из Python
- Сделать словарь только для чтения в Python
- Заматчить любой символ, включая перевод строки, в регулярных выражениях на Python
- Получить список файлов в директории через pathlib в Python
- Вывести действительное число с округлением до нескольких символов после запятой в Python
- Вывод в терминал текста с цветами в Python
- Перезагрузить импортированный модуль в Python
- Безопасно создать список/словарь/любой объект из строкового представления в Python
- Аналог декоратора @property для методов класса в Python
- Перехватить ошибку TimeoutError в asyncio
- Отключить вывод логов в Python
- Уровни логгирования в Python
- Удалить *.pyc и __pycache__ файлы
- Выгрузить объект в JSON в Unicode в Python
- Конвертировать datetime в другую часовую зону в Python
- Дополнить строку нулями в Python
- Вычислить MD5 от строки в Python
- Удалить знаки пунктуации из строки в Python
- Проверить, что первая буква в строке — заглавная, в Python
- Разбить (split) строку по нескольким разделителям в Python
- Отсортировать версии в Python
- Распаковать любой архив в Python
- Получить имя текущего скрипта на Python
- Установка pip на Python 2.6
- Отличить печатаемый символ Unicode от непечатаемого на Python
- Вывести версию интерпретатора Python в машиночитаемом виде
- Найти место, куда Python устанавливает пакеты (dist-packages, site-packages)
Как убрать незначащие нули в python
Спасибо, совет правильный. Еще такой вопрос всвязи с этим, есть форма списка документов, надо, чтобы номер документа там также без нулей был, как это проще сделать?
(15) посмотри модуль печати документа, там и префикс убирается, и нули
можно попробовать при вводе строки устновить вывод текста и там подменять номер.
стр = стрзаменить(ВходСтр,»0″,Символы.ПС);
для к = 1 по СтрЧислоСтрок(стр) Цикл
если СтрДлина(стрполучитьстроку(стр,к))>0 тогда
прервать;
КОнецЕсли;
КонецЦикла;
(6)
> ПроверяемыйСимвол = Сред(ИскомаяСтрока, НомерСимвола,1);
> Если КодСимвола(ПроверяемыйСимвол) <> 48 Тогда
достаточно
Если КодСимвола(ПроверяемыйСимвол,ПроверяемыйСимвол) <> 48 Тогда
+если уж на скорость, то ПозицияНеНуля можно выкинуть. в 1С переменная цикла при выходе из цикла определена (НомерСимвола).
при выходе = после выхода
стр = СокрЛ(СтрЗаменить(ИскомаяСтрока, «0», » «));
Поз = СтрДлина(ИскомаяСтрока) — СтрДлина(стр) + 1;
Если Поз > 1 Тогда
СтрокаБезВедущихнулей = Сред(ИскомаяСтрока,Поз);
Иначе
СтрокаБезВедущихнулей = ИскомаяСтрока;
КонецЕсли;
о где Serg69? Он такое любит под попкорн.
Вот еще вариант (если посередине строки пробелов нет):
СтрокаБезНулей = СтрЗаменить(ИскомаяСтрока, «0», » «);
СтрокаБезНулей = СокрЛ(СтрокаБезНулей);
Результат = СтрЗаменить(СтрокаБезНулей, » «, «0»);
(23) если были пробелы, не прокатит.
СтрокаБезНулей = СтрЗаменить(СтрЗаменить(ИскомаяСтрока,» «, «_»), «0», » «);
СтрокаБезНулей = СокрЛ(СтрокаБезНулей);
Результат = Прав(ИсходнаяСтрока, СтрДлина(СтрБезНулей));
(22) А? что? где? где попкорн?
//Убрать ведущие нули из строки
Запрос = Новый Запрос();
Запрос.Текст = «ВЫБРАТЬ ВЫБОР КОГДА Т1.Стр ПОДОБНО «»0%»» ТОГДА ПОДСТРОКА(Т1.Стр, 2, 1000) ИНАЧЕ Т1.Стр КОНЕЦ КАК БезНулей
|ИЗ (ВЫБРАТЬ ВЫБОР КОГДА Т2.Стр ПОДОБНО «»00%»» ТОГДА ПОДСТРОКА(Т2.Стр, 3, 1000) ИНАЧЕ Т2.Стр КОНЕЦ КАК Стр
|ИЗ (ВЫБРАТЬ ВЫБОР КОГДА Т3.Стр ПОДОБНО «»0000%»» ТОГДА ПОДСТРОКА(Т3.Стр, 5, 1000) ИНАЧЕ Т3.Стр КОНЕЦ КАК Стр
|ИЗ (ВЫБРАТЬ ВЫБОР КОГДА Т4.Стр ПОДОБНО «»00000000%»» ТОГДА ПОДСТРОКА(Т4.Стр, 9, 1000) ИНАЧЕ Т4.Стр КОНЕЦ КАК Стр
|ИЗ (ВЫБРАТЬ ВЫБОР КОГДА Т5.Стр ПОДОБНО «»0000000000000000%»» ТОГДА ПОДСТРОКА(Т5.Стр, 17, 1000) ИНАЧЕ Т5.Стр КОНЕЦ КАК Стр
|ИЗ (ВЫБРАТЬ ВЫБОР КОГДА &ЕстьНули ПОДОБНО «»00000000000000000000000000000000%»» ТОГДА ПОДСТРОКА(&ЕстьНули, 33, 1000) ИНАЧЕ &ЕстьНули КОНЕЦ КАК Стр) КАК Т5) КАК Т4) КАК Т3) КАК Т2) КАК Т1″;
// Проверим?
Фигня = «0000000000000000000000000000000000000000000000000000000000000000123»;
Запрос.УстановитьПараметр(«ЕстьНули», Фигня);
Выборка = Запрос.Выполнить().Выбрать();
Выборка.Следующий();
Сообщить(«Было : » + Фигня + «, стало : » + Выборка.БезНулей);
Возврат;
Python. как убрать ненужные 0
Все не целые цифры будут откинуты и округлены. То есть, 10.3 = 10. Но, по моему 10.5 = 11. Но я точно не помню.
Можно выводить не а и b, a их функции f(a) и f(b), причём функция f в случае, когда число х является фактически целым, переопределяет тип и определяется так:
. if x-int(x)==0:return int(x)
Тогда оператор print(f(a),f(b)) выдаст:
10 13.05
Вот пример расчёта гипотенузы прямоугольного треугольника по его катетам а и b (f определена выше!):
import math
a=float(input(«a b container-for-similar»>