Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 07.12.2022
Сообщений: 2

Почему питон не выводит нули, которые стоят перед другими цифрами?

22.03.2023, 21:12. Показов 330. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот код:
import re

def number_contains_digit(number, digit):
return str(digit) in str(number)

def convert_number_to_words(number):
words = {
'0': 'ноль',
'1': 'один',
'2': 'два',
'3': 'три',
'4': 'четыре',
'5': 'пять',
'6': 'шесть',
'7': 'семь',
'8': 'восемь',
'9': 'девять',
}
return " ".join(words[digit] for digit in str(number))

def process_numbers(file_path, block_size, digit_to_exclude):
pattern = r"\b\d+\b"
with open(file_path, "r", encoding="utf-8") as file:
first_number = True
last_number = None

while True:
block = file.read(block_size)
if not block:
break

numbers = [int(num) for num in re.findall(pattern, block) if not number_contains_digit(num, digit_to_exclude)]

if not numbers:
continue

if first_number:
print(convert_number_to_words(numbers[0]))
first_number = False

last_number = numbers[-1]

for number in numbers[1:-1]:
if number_contains_digit(number, digit_to_exclude):
continue
print(number)

if last_number is not None and not number_contains_digit(last_number, digit_to_exclude):
print(convert_number_to_words(last_numbe r))

if __name__ == "__main__":
file_path = "123.txt"
block_size = 1024
digit_to_exclude = int(input("Введите цифру, которую нужно исключить: "))

process_numbers(file_path, block_size, digit_to_exclude)

Цифры из блокнота:666333 3F1 AB AB1B 2B32 132 101010777 333 132 002 10 1A 2F1 3F 4F 5B 5 F 7 8F 900 !1111111 111 -12121 11011 10101
По условию я исключаю одну цифру, выходят числа правильно, но нули стоящие спереди не выходят
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.03.2023, 21:12
Ответы с готовыми решениями:

Удалить нули перед цифрами из Excel
Добрый день. Пытаюсь разрешить следующую задачу. Есть таблица в excel которая заполнена следующими данными 01-01-001-01 02-01-01-02...

XStream не конвертирует числа 8 и 9, если перед ними стоят нули
Как настроить XStream, если при вызове метода fromXML("имя файла"), он выводит ошибки только тогда, когда на одном из полей есть 8 или 9,...

Названия папок. Как добавить нули перед цифрами?
echo off set /p input= Vvedite kolichestvo papok : for /l %%i in (1,1,%input%) do md "%cd%/%%i" Как исправить код, чтобы папки...

1
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
22.03.2023, 22:05
Semapy, я правильно понимаю - вот эта портянка служит удалению указанной цифры из текста файла?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
22.03.2023, 22:05
Помогаю со студенческими работами здесь

Вставить текст, состоящий из строк, которые стоят одни над другими
Надо вставить на место курсора такой текст. я знаю, что надо использовать Selection.Text, но вот как сделать три строки одну над другой, не...

Заменить на нули элементы, которые идут перед числом которые я ввел
int main() { int num; List<int> a; List<int> b; a.push_back(0); a.push_back(2); a.push_back(1);

Вывести на экран все числа которые стоят перед 0
дана последов. действ.чисел среди них есть 0. вывести на экран все числа которые стоят перед 0.

Элементы массива, которые стоят перед последним максимальным, упорядочить по возрастанию
элементы массива, которые стоят перед последним максимальным, упорядочить по возрастанию (используя функции)

Найти сумму элементов, которые стоят перед максимальным элементом в двумерном массиве
Дана прямоугольная таблица, которая содержит не более 10 строк и не более 10 столбцов. Найти сумму элементов, которые стоят перед...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru