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

Программа не видит последовательность и выдает ошибку ValueError: max() arg is an empty sequence

21.05.2022, 00:07. Показов 2898. Ответов 4

Студворк — интернет-сервис помощи студентам
Задача Программа считывает последовательность цифр из файла(построчно) и выводит на экран самую длинную возрастающую последовательность, ее длину и позицию

Проблема: программа не видит последовательности начинающиеся с нуля
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import fileinput, time,os,re,psutil
start_time = time.time()
lst = []
# СЧитаем файл
with fileinput.FileInput('111.txt') as file:
    for line in file:
            for i in re.findall(r'\d+', line):
                lst.append(i)
    # Список возрастающих последовательностей
    list1 = []
    # Находим самую длинную последовательность
    for number, i in enumerate(lst):
        temp_s=''
        fl = True
        buff = 0
        # Проверяем только если больше одного символа
        if len(i) > 1:
            for j in i:
                if int(j) > buff:
                    # Накапливаем последовательность
                    temp_s += j
                    buff = int(j)
                else:
                    # Не возрастающая последовательность
                    fl= False
                    break
            # Запомнили последовательность и её номер
            if fl:
                list1.append((temp_s, number + 1))
# Находим самую длинную последовательность
longest=max(list1, key=lambda i: len(i[0]))
 
print(f'Полученные из файла последовательнности- {lst}\n'
      f'Самая длинная восх. посл. - {longest[0]}\n'
      f'Длина последовательности - {len(longest[0])}\n'
      f'Номер последовательности - {longest[1]}')
process = psutil.Process(os.getpid())
print("Программа занимает ", process.memory_info().rss /1048576,"мбайт")  # in bytes
print("--- %s Секунд выполнялась программа  ---" % (time.time() - start_time))

файл 019 0123 01234 0123456 0123456789 I (like programing) (мне нравится программировать)
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.05.2022, 00:07
Ответы с готовыми решениями:

Как исправить ошибку: ValueError: setting an array element with a sequence
Здравствуйте, подскажите пожалуйста как решить ошибку ValueError: setting an array element with a sequence. Пытался поискать в интернете,...

Программа, заполняющая массив аргументами от 0 до 50, записывающая эти аргументы в arg*arg-50*arg. вывод в arr
!!ИСПОЛЬЗОВАНИЕ ФУНКЦИИ В ЭТОЙ ПРОГРАММЕ ОБЯЗАТЕЛЬНО!! Необходима программа, которая заполнит массив аргументами от 0 до 50, будет...

Почему программа выдает ошибку? Можно подобрать входные данные при которых программа выдает ошибку
Гарри в печали: вот уже девять лет как он не достает свою волшебную палочку на камеру. Но случилось чудо! Продюсеры дали добро на съемку...

4
Эксперт Python
8849 / 4501 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
21.05.2022, 00:24
LanStudent, 8-я строчка:
Python
1
2
3
...
lst.append(int(i))
...
Добавлено через 3 минуты
Вывести самую длинную возрастающую последовательность, ее длину и позицию
0
0 / 0 / 0
Регистрация: 10.11.2021
Сообщений: 81
21.05.2022, 00:38  [ТС]
Но тогда в 18 сравнение не работает @Gdez

Добавлено через 4 минуты
тогда мой код просто пересает работать,а в посте ниже предложенный вами не выполняет задачу корректно

Добавлено через 8 минут
Gdez тогда мой код просто пересает работать,а в посте ниже предложенный вами не выполняет задачу корректно,если поставить ...
lst.append(int(i))
...
будет ошибка в 18
0
Эксперт Python
8849 / 4501 / 1864
Регистрация: 27.03.2020
Сообщений: 7,317
21.05.2022, 05:45
LanStudent,
будет ошибка в 18
Так можно же вместо
Python
1
if len(i) > 1:
Написать
Python
1
if i > 9:
0
 Аватар для prinv
20 / 15 / 5
Регистрация: 12.11.2016
Сообщений: 77
21.05.2022, 11:10
Как-то сложно решаете простую задачу, imho

Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
def isincrease(s: str) -> bool:
    prev_sym = ' '
    for i in s:
        if i <= prev_sym:
            return False
        prev_sym = i
    return True
 
 
spisok = []
 
with open('input.txt', 'r') as file:
    for stroka in file:
        for t in stroka.split():
            try:
                int(t)
            except ValueError:
                continue
            if isincrease(t):
                spisok.append(t)
 
value = max(spisok, key=len)
print('Самая длинная восх. посл. ', value)
print('Номер посл.', spisok.index(value))
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.05.2022, 11:10
Помогаю со студенческими работами здесь

При вводе чисел a=0,b=0,c=0 программа не видит числа и не выдает ошибку в label
Всех приветствую, нужна помощь с написанием программы-калькулятор для решения квадратных уравнений на языке программирования С++ с...

Почему при конвертировании русского в UNICODE выдает ошибку Illegal byte sequence
При компиляции такого кода: hCheckcBox = CreateWindowW((L&quot;button&quot;), (L&quot;Следить за буфером&quot;), WS_CHILD | WS_VISIBLE | BS_AUTOCHECKBOX,...

Dev-C++ выдает ошибку error: converting to execution character set: Illegal byte sequence
Кто в курсе, в чем ошибка. Вот код минимального приложения #include &lt;windows.h&gt; int WINAPI WinMain(HINSTANCE hInstance, ...

ValueError: dictionary update sequence element #0 has length 9; 2 is required
Вынесено из темы https://www.cyberforum.ru/python-graphics/thread2623995.html Semen-Semenich, Привет,помоги плис с проблемой не могу...

ValueError: dictionary update sequence element #0 has length 1; 2 is required
делаю shub deploy, получаю shub deploy Traceback (most recent call last): File &quot;c:\anaconda3\lib\runpy.py&quot;, line 193, in...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
Загрузка PNG с альфа-каналом на SDL3 для Android: с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
Влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru