Python Как добавить запятую в строке
У меня есть число в строке, к которому нужно добавить запятую через 3 знака (с конца). Например Исходная строка:
122236055 Нужно:
122236,055 Исходная строка:
123456789
Нужно:
123456,789 Как это сделать?
Отслеживать
задан 8 янв 2022 в 9:33
17 1 1 серебряный знак 4 4 бронзовых знака
3 ответа 3
Сортировка: Сброс на вариант по умолчанию
Можно использовать срезы и f-строку :
n = '122236055' print(f',') # 122236,055
Отслеживать
ответ дан 8 янв 2022 в 9:49
69.4k 5 5 золотых знаков 20 20 серебряных знаков 51 51 бронзовый знак
Если выводишь переменную, то перед выводом дели на 1000.
a = 123456789 a = a/1000 print(a)
Вывод программы: 123456,789.
Отслеживать
ответ дан 8 янв 2022 в 9:39
34 1 1 серебряный знак 8 8 бронзовых знаков
От настроек локали будет зависеть. В Google Colab точку ставит, а не запятую, например.
8 янв 2022 в 9:46
Если число, то, как уже выше сказали: a/1000 , но при приведении к строковому типу наверняка будет точка вместо запятой.
Можно воспользоваться стандартным модулем locale или просто заменить точку.
import locale a = 123456789 locale.str(a / 1000) # ИЛИ str(a / 1000).replace('.', ',')
Если это строка, вариантов тоже несколько:
b = '123456789' # Первый c = float(b) / 1000 # Второй c = b[:len(b)-3] + ',' + b[len(b)-3:]
В первом я просто конвертирую строку в число с плавающей запятой, во втором перед последними 3-мя символами добавляю запятую.
Когда использовать запятые в коде на Python
Конечные запятые обычно необязательны, за исключением того, что они обязательны при создании кортежа из одного элемента (а в Python 2 они имеют семантику для оператора print ). Для ясности рекомендуется заключать последние в (технически избыточные) скобки.
# Правильно FILES = ('setup.cfg',) # Хорошо, но сбивает с толку: FILES = 'setup.cfg',
Конечные запятые являющиеся избыточными, часто полезны, когда используется система управления версиями, и когда ожидается, что список значений, аргументов или импортированных элементов будет расширен с течением времени. Рекомендации заключается в том, чтобы к каждому значению, помещенному в отдельную строку, всегда добавлять запятую и заканчивать скобками на следующей строке. Однако не имеет смысла использовать запятую в той же строке, что и закрывающая скобка (за исключением приведенного выше случая кортежей с одним элементом).
# Правильно FILES = [ 'setup.cfg', 'tox.ini', ] initialize(FILES, error=True, )
# Неправильно FILES = ['setup.cfg', 'tox.ini',] initialize(FILES, error=True,)
- ОБЗОРНАЯ СТРАНИЦА РАЗДЕЛА
- Разметка кода Python, PEP 8
- Пробелы в выражениях и операторах языка Python
- Когда использовать запятые в коде на Python
- Комментарии в коде языка Python
- Соглашения об именах
- Рекомендации по программированию на Python
Ввод-вывод, оператор присваивания, арифметические операции
Данный курс будет посвящен изучению программирования с использованием языка Python. Это — современный язык программирования, работающий на всех распространных операционных системах.
В настоящее время существует две версии языка Python: более старая, но пока ещё более распространненая версия 2 и современная версия 3. Они не вполне совместимы друг с другом: программа, написанная для одной версии языка может оказаться невыполнимой для другой версии. Но в основном обе версии очень похожи.
Мы будем использовать версию 3 данного языка, некоторые из используемых примеров не будут работать с версией 2. Последняя версия языка, доступная в сентябре 2010 года — 3.1.2, именно её необходимо установить дома, скачав данную версию с сайта www.python.org.
Запустить интерпретатор python можно из командной строки:
$ python3
Будьте внимательны — команда python запустит интерпретатор версии 2, с которым мы работать не будем. В системе Windows можно использовать пункт меню “Python (command line)”
Вы увидите примерно следующее приглашение командной строки:
Python 3.1.2 (r312:79147, Jun 12 2010, 15:29:06)
[GCC 4.4.3 20100316 (ALT Linux 4.4.3-alt2)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>
Смело вводите команды и наслаждайтесь результатом. А что можно вводить? Несколько примеров:
>>> 2 + 2
4
>>> 2 ** 100
1267650600228229401496703205376
>>> 'Hello' + 'World'
'HelloWorld'
>>> 'ABC' * 100
'ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC
ABCABCABCABCABCABCABCABCABCABCABCABCABCABCABCABC'
Первая команда вычисляет сумму двух чисел, вторая команда вычисляет 2 в степени 100, третья команда выполняет операцию конкатенации для строк, а четвертая команда печатает строку ‘ABC’, повторенную 100 раз.
Хотите закончить работу с питоном? Введите команду exit() (именно так, со скобочками, так как это — функция), или нажмите Ctrl+D.
Грамотно ставим запятые
Добавим в него ещё город и сделаем diff двух файлов перед коммитом.
>>> capitals = ['Beijing', 'New Delhi', 'Mexico City']
Инструмент подсветит строчку и будет сложнее понять, какой именно элемент добавили, особенно если список длинный. Поэтому лучше писать:
>>> capitals = [ 'Beijing', 'New Delhi' 'Mexico City' ]
Так на diff’е будет видно, какой именно элемент появился, и делать ревью тоже будет проще. Кстати, вы заметили, что я забыла запятую? Это частая ошибка, и довольно неприятная, потому что при этом не только не будет брошено исключение, но и объединятся две последние строки:
>>> capitals ['Beijing', 'New DelhiMexico City']
Упс. Строки, не разделенные запятой, в Python конкатенируются. Это удобно для того, чтобы размещать в коде длинные тексты без переноса строки:
>>> why_so = ('Это очень очень ' 'очень длинная строка или ' 'документ на вашем сайте.') >>> why_so 'Это очень очень очень длинная строка или документ на вашем сайте.'
Но иногда это играет с разработчиками злую шутку. Поэтому, чтобы не забывать добавлять запятую в предпоследнем элементе, хорошей практикой считается всегда ставить запятую в конце коллекции:
>>> capitals = [ 'Beijing', 'New Delhi', 'Mexico City', ]
Она не повлияет на выполнение программы, зато уменьшит вероятность ошибки программиста. При этом diff будет читаться лучше, потому что утилита подсветит только новую строку.
Плюсы запятой в конце коллекции:
- один и тот же формат всех строк;
- меньше ошибок по невнимательности;
- удобно ставить под контроль версий.