1 / 1 / 0
Регистрация: 01.12.2020
Сообщений: 71

Строка в список

03.10.2021, 18:28. Показов 982. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
как сделать, чтобы было так
ввод: 8 114356 30
вывод: ['8', ' ', ' ', '1', .....]
Ну вы поняли, я надесюь
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
03.10.2021, 18:28
Ответы с готовыми решениями:

Рекурсия: задан список строк, где каждая строка задает имя и фамилию; вернуть список строк с инициалами
мне нужно написать данную задачу с использованием рекурсии: Задан список строк где каждая строка задает имя и фамилию вернуть список...

Обменяйте местами элементы следующих строк: первая строка – n-я строка, вторая строка – (n-1)-я строка, третья
2. Обменяйте местами элементы следующих строк: первая строка – n-я строка, вторая строка – (n-1)-я строка, третья строка – (n-2)-я строка и...

Считать числа из файла в двумерный список "одна строка файла - один список в списке"
Ваша задача - считать числа из файла в двумерный список по принципу "одна строка файла - один список в списке" и распечатать этот...

12
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
03.10.2021, 18:44
Python
1
2
nums = input()
print(list(nums))
Добавлено через 52 секунды
Цитата Сообщение от NORBI273 Посмотреть сообщение
Ну вы поняли, я надесюь
Если я конечно правильно понял
0
1 / 1 / 0
Регистрация: 01.12.2020
Сообщений: 71
03.10.2021, 19:08  [ТС]
anton78spb, странно
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
ainput = ''.join(input().split())
ainput1 = list.copy(list(ainput))
try:
    assert ainput[0] == '+'
    assert ainput[1] == '7'
 
except AssertionError:
    if ainput1[1] == ('3') or ainput1[1] == ('5') or ainput1[1] == ('1'):
        print('не определяется оператор сотовой связи')
        exit(0)
    elif not ainput.startswith('8'):
        print('неверный формат')
        exit(0)
почему тогда это не работает
0
 Аватар для Semen-Semenich
5226 / 3472 / 1174
Регистрация: 21.03.2016
Сообщений: 8,300
03.10.2021, 19:13
Цитата Сообщение от NORBI273 Посмотреть сообщение
почему тогда это не работает
а что вы подаете на вход? пример -
что по вашему должно быть в ainput1?
что делает эта строка
Python
1
if ainput1[1] == ('3') or ainput1[1] == ('5') or ainput1[1] == ('1')
:
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
03.10.2021, 19:14
Цитата Сообщение от NORBI273 Посмотреть сообщение
почему тогда это не работает
Что конкретно не работает? Что нужно ввести чтобы получить ошибку?
0
1 / 1 / 0
Регистрация: 01.12.2020
Сообщений: 71
03.10.2021, 19:34  [ТС]
Semen-Semenich, ввод: 8 114356 30
должен выводить: неверное количество цифр
выводит: не определяется оператор сотовой связи
он пробелы просто убирает
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
03.10.2021, 19:47
Цитата Сообщение от NORBI273 Посмотреть сообщение
должен выводить: неверное количество цифр
Как он будет выводить данное сообщение, если в вашем коде нет такого сообщения?
0
1 / 1 / 0
Регистрация: 01.12.2020
Сообщений: 71
03.10.2021, 20:02  [ТС]
anton78spb, Это неполный код
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
40
41
42
43
44
45
46
ainput = ''.join(input().split())
ainput1 = list.copy(list(ainput))
try:
    assert ainput[0] == '+'
    assert ainput[1] == '7'
 
except AssertionError:
    if ainput1[1] == ('3') or ainput1[1] == ('5') or ainput1[1] == ('1'):
        print('не определяется оператор сотовой связи')
        exit(0)
    elif not ainput.startswith('8'):
        print('неверный формат')
        exit(0)
try:
    assert ainput.count('--') == 0
    assert not ainput.startswith('-')
    assert ainput[-1] != '-'
    assert ainput.count('(') == ainput.count(')') == 1 or ainput.count('(') == ainput.count(')') == 0
except AssertionError:
    print('неверный формат')
    exit(0)
ainput = ainput.replace('(', '')
ainput = ainput.replace(')', '')
ainput = ainput.replace('-', '')
if ainput.startswith('8'):
    ainput = '+7' + ainput[1:]
operator = ainput[2:5]
mtc = ['910', '911', '912', '913', '914', '915', '916', '917', '918', '919',
       '980', '981', '982', '983', '984', '985', '986', '987', '988', '989']
megafon = ['920', '921', '922', '923', '924', '925', '926', '927', '928',
           '929', '930', '931', '932', '933', '934', '935', '936', '937',
           '938', '939']
beline = ['902', '903', '904', '905', '906', '960', '961', '962', '963',
          '964', '965', '966', '967', '968', '969']
op = mtc + megafon + beline
try:
    assert len(ainput) == 12
except AssertionError:
    print('неверное количество цифр')
    exit(0)
try:
    assert operator in op
except AssertionError:
    print('не определяется оператор сотовой связи')
    exit(0)
print(ainput)
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
03.10.2021, 20:53
Цитата Сообщение от NORBI273 Посмотреть сообщение
Это неполный код
Это уже лучше. Но теперь я немного переформулирую свой вопроc, хотя смысл его особо не изменится.
А почему в вашем примере с вводом "8 114356 30" он должен вывести что-то иное, кроме как "не определяется оператор сотовой связи"? Почему вы ждете от него "неверное количество цифр"?

У вас последовательность "8 114356 30" начинается не с "+7", соответственно вы сразу же попадаете в блок except, где идет проверка if ainput1[1] == ('3') or ainput1[1] == ('5') or ainput1[1] == ('1'). Второй символ у вас "1". Соответственно вы выполняется строка print('не определяется оператор сотовой связи').
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
03.10.2021, 21:34
Цитата Сообщение от NORBI273 Посмотреть сообщение
ainput1[1] == ('3') or ainput1[1] == ('5') or ainput1[1] == ('1')
Вот так больше не пиши никогда. Ок? Это убивает.


Python
1
ainput1[1] in ("1", "3","5")
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
03.10.2021, 21:39
Garry Galler, Меня конструкция try - except убивает, с ловлей внутри исключения от assert.
Можно же обычный if использовать. Но ТС не ищет легких путей

Добавлено через 1 минуту
Причем в блоке except if уже идет.
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
03.10.2021, 21:42
Цитата Сообщение от anton78spb Посмотреть сообщение
Меня конструкция try - except убивает, с ловлей внутри исключения от assert
Это тоже :-)
Я вообще не понял зачем он столько ассертов напихал...Может ему в задании так накрутили...
0
1956 / 874 / 352
Регистрация: 05.09.2021
Сообщений: 1,387
03.10.2021, 21:45
Строка ainput1 = list.copy(list(ainput)) тоже шедевр.
Смысла в ней нет. Можно же просто ainput[1] проверять на вхождение в список исключений.

Добавлено через 1 минуту
Там сама глубина поражает, создать из строки список, получить его копию, а оригинальный сборщику мусора скормить
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.10.2021, 21:45
Помогаю со студенческими работами здесь

Список + строка
Столкнулся с некоторым непониманием основ... d = d += 'sf' работает и дает . А вот a = c = 'sf' a = a + c нет. Почему?

Строка в список чисел
Добрый день. Можно ли одним действием входные данные преобразовать в числа? Чтобы вот это n, m = input().split() n = int(n) ...

строка в список, Update код
Доброго времени суток, помогите переписать код, чтоб в строку можно было вводить цифры больше 9, проблема в том что препод вводит цифру 10+...

Дан список в котором хранится строка
разрежьте его на две равные части (если длина строки нечетная, то длина первой части должна быть на один символ больше). Переставьте эти...

8.3: Дин.список и строка поиска в нем ?
Случайно заметил сегодня, что в форме выбора в дин.списке есть свойство "СтрокаПоиска" ее можно вывести вверху, например. И,...


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

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

Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru