36 / 30 / 13
Регистрация: 08.12.2012
Сообщений: 810

Не выводится числа из списка

08.08.2024, 22:07. Показов 909. Ответов 18

Студворк — интернет-сервис помощи студентам
почему не выводится числа из списка
Python
1
2
3
4
5
6
7
8
9
10
def p(x):
    for i in x:
        if x == []:
            return
        else:
            return p(x[:])
 
x = [1, 2, 3, 4, 5]
a = p(x)
print(a)
почему так p(x[:]) - нельзя а так
Python
1
2
3
else:
    print(p(x[0]))
    p(x[1:])
можно

почему при p(x[:])
вылазит ошибка, что идет какое-то переполнение я и так вижу
почему не перебираются числа по порядку

E:\PYTHON\projects\PROBA_1\venv\Scripts\ python.exe C:/Users/Гоша/.PyCharmCE2018.1/config/scratches/scratch_2.py
Traceback (most recent call last):
File "C:/Users/Гоша/.PyCharmCE2018.1/config/scratches/scratch_2.py", line 10, in <module>
a = p(x)
File "C:/Users/Гоша/.PyCharmCE2018.1/config/scratches/scratch_2.py", line 6, in p
return p(x[:])
File "C:/Users/Гоша/.PyCharmCE2018.1/config/scratches/scratch_2.py", line 6, in p
return p(x[:])
File "C:/Users/Гоша/.PyCharmCE2018.1/config/scratches/scratch_2.py", line 6, in p
return p(x[:])
[Previous line repeated 995 more times]
File "C:/Users/Гоша/.PyCharmCE2018.1/config/scratches/scratch_2.py", line 3, in p
if x == []:
RecursionError: maximum recursion depth exceeded in comparison

Process finished with exit code 1

просьба тему не зас.. рать а писать по делу
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
08.08.2024, 22:07
Ответы с готовыми решениями:

Два списка; один выводится, второй - не выводится
Вот код rooms = people = print(people) print(rooms) а на выходе только список people

Текст из списка выводится не в бота,а в терминал,как сделать так чтобы текст из списка выводился в бота, а не втерминал?
import telebot from config import * from Question import Question import keyboard bot = telebot.TeleBot(TOKEN) ...

Не выводится элемент списка
Написал несколько функций: для заполнения связного списка, добавление в него элемента на заданную позицию и вывод измененного списка на...

18
 Аватар для Semen-Semenich
5220 / 3468 / 1172
Регистрация: 21.03.2016
Сообщений: 8,291
08.08.2024, 22:22
Цитата Сообщение от ujif Посмотреть сообщение
что идет какое-то переполнение
по делу начни читать материал а то произойдет переполнение форума глупыми вопросами!!! потому что нет выхода из рекурсии!!! так как список не изменяется и условие if x == []: не выполнится никогда. с таким же успехом можно писать
Python
1
return p(x)
>>> x = [1, 2, 3, 4, 5]
>>> d = x[:]
>>> c = x[:]
>>> e = x[:]
>>> x
[1, 2, 3, 4, 5]

>>> d
[1, 2, 3, 4, 5]
>>> c
[1, 2, 3, 4, 5]
>>> e
[1, 2, 3, 4, 5]
>>>
1
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,304
08.08.2024, 23:07
Python
1
2
3
4
5
6
7
8
9
10
11
12
def p(x):
    for i in x:
        if x == []:
            return p(x)
        else:
             print(p(x[0]))
             p(x[1:])
 
 
x = [1, 2, 3, 4, 5]
a = p(x)
print(a)
Не понял почему ошибка?

Добавлено через 17 минут
Все равно бред какой то получается:
Python
1
2
3
4
5
6
7
8
9
10
11
12
def p(x):
    for i in x:
        if x == []:
            return p(x)
        else:
 
           return  p(x[1:])
 
 
x = [1, 2, 3, 4, 5]
a = p(x)
print(a)
0
36 / 30 / 13
Регистрация: 08.12.2012
Сообщений: 810
08.08.2024, 23:24  [ТС]
Цитата Сообщение от Semen-Semenich Посмотреть сообщение
глупыми вопросами!!!
так и не стоило писать свои глупые ответы,
ты не можешь объяснить просто, - почему числа из списка при p(x[:])
не считываются друг за другом пока список не опустеет,
я же писал , и тебе бы нужно было быть внимательным, почему так
print(p(x[0]))
p(x[1:]) все читается по порядку
а так p(x[:]) никакой остановки нет
не можешь объяснить просто без " читай материал" , и какой "материал" и где читать ???
зачем ты тут ?? и без твоих воплей нервы на пределе
и что ты там показал выводя вот это
>>> d
[1, 2, 3, 4, 5]
>>> c
[1, 2, 3, 4, 5]
>>> e
[1, 2, 3, 4, 5]
что это значит для объяснения ??

Добавлено через 4 минуты
Цитата Сообщение от isaak Посмотреть сообщение
Не понял почему ошибка?
просил не засерать тему , на кой ты тут расписался ?
0
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,304
08.08.2024, 23:28
Тоже, под сомнением:
Python
1
2
3
4
5
6
7
8
9
10
11
12
def p(x):
    for i in x:
        if x == []:
            return p(x)
        else:
 
           return  p(x[1:])
 
 
x = [1, 2, 3, 4, 5]
a = p(x)
print(x[1:])
0
36 / 30 / 13
Регистрация: 08.12.2012
Сообщений: 810
08.08.2024, 23:36  [ТС]
[...]
0
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,304
09.08.2024, 00:24
Вроде рекурсия:
Python
1
2
3
4
5
6
7
def run(t):
  while(t):
    yield t
    t = [x - 1 for x in t if x > 1]
mylist = [1,2,3,4,5]
for t in run(mylist):
  print(t)
Добавлено через 27 минут
Semen-Semenich, последнее решение вроде бы больше похоже на рекурсию?

Добавлено через 9 минут
Semen-Semenich, можно еще собрать в один массив с помощью list
Python
1
2
3
4
5
6
7
def run(t):
  while(t):
    yield t
    t = [x - 1 for x in t if x > 1]
 
mylist = [5,4,3,2,1,1]
print(list(run(mylist)))
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
09.08.2024, 08:04
Цитата Сообщение от ujif Посмотреть сообщение
какой "материал" и где читать ???
Внезапно - В УЧЕБНИКЕ!!! Их несть числа. Бери любой и начинай сначала читать и решать задачи.
Цитата Сообщение от ujif Посмотреть сообщение
почему
Потому что написано пальцем в небо. И тебе ув. Семеныч написал почему - нет условия выхода из рекурсии. Ты берешь срез списка от начала до конца, т.е. его копию. Что там и куда уменьшается?

Добавлено через 4 минуты
Python
1
2
3
4
5
6
7
def foo(z):
    if z:
        print(z[0])
        foo(z[1:])
 
 
foo([1, 2, 3, 4, 5])
2
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,304
09.08.2024, 12:15
iSmokeJC, вот еще менее красивые варианты:
Python
1
2
3
my_list = [1, 2, 3, 4]
result = int("".join(str(x) for x in my_list))
print(result)

Python
1
2
lst = [1, 2, 3, 4]
print(''.join(map(str, lst)))
Python
1
2
3
4
numbers = [1, 2, 3, 4]
str_numbers = ''.join(str(i) for i in numbers)
result = int(str_numbers)
print(result)
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
09.08.2024, 12:17
isaak, да вариантов тьма. Тут вроде базар про рекурсию был
0
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,304
09.08.2024, 12:31
iSmokeJC, то что я с ночью с рекурсией выложил это подходит?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
09.08.2024, 12:33
isaak, там нет рекурсии
0
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,304
09.08.2024, 12:35
Заметил у себя ошибку:
Python
1
2
3
4
5
6
7
8
def run(t):
    while (t):
        yield t
        t = [x - 1 for x in t if x > 1]
 
 
mylist = [1, 2, 3, 4, 5]
print(list(run(mylist)))
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
09.08.2024, 12:39
isaak, рекурсии тут нет, это раз. Что выведет твоя прога, если список будет например такой - [1, 1, -1, -1, 0, 0, 1, 1] ?
Это два.
0
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,304
09.08.2024, 12:48
iSmokeJC, вот рекурсивный список:
Python
1
2
3
4
5
6
7
8
9
def func(lst):
    for el in lst:
        if isinstance(el, list):
            func(el)
        else:
            print(el)
 
 
func([1, 2, 3, 4, 5])
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
09.08.2024, 12:48
isaak, и что?
0
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,304
09.08.2024, 13:03
Выполняет, тоже что и ваш код. Правильно?

Добавлено через 6 минут
Вот еще как вариант:
Python
1
2
3
4
5
6
7
def func(n):
    if n < 1:
        return 1
    else:
        print(n)
        return func(n - 1)
func(5)
0
09.08.2024, 13:04

Не по теме:

Смешались вместе кони, люди...

0
90 / 125 / 28
Регистрация: 17.10.2010
Сообщений: 1,304
09.08.2024, 13:12
Вот еще вариант:
Python
1
2
3
4
5
6
def func(n):
 
    if n > 0:
        func(n - 1)
        print(n)
func(5)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.08.2024, 13:12
Помогаю со студенческими работами здесь

Не выводится содержимое динамического списка
доброго времени суток. структура с типом стринг, трем элементам структуры присваивается значение потом при попытки вывести одно из...

Не выводится первый элемент списка
Пишу стек. При вводе все ок, в теории все ок, но при выводе он не выводит первый элемент, и закрывает консоль. что не так? #include...

Не выводится ноль из списка решить проблему
def filt (a): if a!=str(a): return a if a == 0: return 0 def filter_list(l): ...

Выводится только первый элемент списка
здравствуйте, посмотрите пожалуйста что не так в данно коде . Хоть убейте , не понимаю что не так . Программа создает список из 10...

Вывод списка локальных IP - выводится не то, что нужно
Добрый вечер. IPHostEntry iphostentry = Dns.GetHostByName(Dns.GetHostName()); foreach(IPAddress ipaddress in...


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

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
Опции темы

Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение/ Перевод https:/ / **********/ gallery/ thinkpad-x220-tablet-porn-gzoEAjs . . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru