Как убрать кавычки в python из list
Перейти к содержимому

Как убрать кавычки в python из list

  • автор:

Как убрать из списка все квадратные скобки и кавычки?

Я выводила построчно список студентов из конкретной группы.

1 2 3 4 5
my_len = [["БО-331101",["Акулова Алена", "Бабушкина Ксения"]],["БОВ-421102",[]],["БО-331103",[]]] for i in my_len: if i[0].startswith("БО-331101"): print(*i)

Весь этот кусочек с ещё двумя квадратными скобками является 0-ым по индексу элементом списка (я проверила через вывод).

1 2 3
print(my_len[0]) #[["БО-331101",["Акулова Алена", "Бабушкина Ксения"]] - это my_len[0]

Выводится по коду вот так:

БО-331101 ['Акулова Алена', 'Бабушкина Ксения']

Как можно убрать скобки и кавычки в фамилиях и именах? Выводить всё через запятую?

БО-331101, Акулова Алена, Бабушкина Ксения

Лучшие ответы ( 1 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Как убрать квадратные скобки?
Не могу записать формулу \sum_^<> (x_<>)<>^ * y<>_ (приложил еще фото на всякий.

Убрать квадратные скобки
n = int(input()) squares = print(squares) При выводе программа выводит следующее: Пример -.

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

Как заменить в текстовом файле все круглые скобки на квадратные
Как заменить в текстовом файле все круглые скобки на квадратные

Эксперт функциональных языков программированияЭксперт Python

35345 / 19945 / 4179
Регистрация: 12.02.2012
Сообщений: 33,093
Записей в блоге: 13

Лучший ответ

Сообщение было отмечено Скопа как решение

Решение

1 2 3 4 5 6 7 8 9
def task(lst): for sub in lst: res=sub[0] for x in sub[1]: if len(x)>0: res=res+", "+x print(res) task([["БО-331101",["Акулова Алена", "Бабушкина Ксения"]],["БОВ-421102",[]],["БО-331103",[]]])

4459 / 3212 / 1125
Регистрация: 21.03.2016
Сообщений: 7,949

ЦитатаСообщение от Скопа Посмотреть сообщение

Я выводила построчно список студентов из конкретной группы
зачем вы его туда так запихнули. словари вам не знакомы?
Регистрация: 19.12.2020
Сообщений: 214

Semen-Semenich, я знаю про словари, но это не мой список, а условие задания. По условию информация была дана вот так. Следовательно, должен существовать какой-то способ решить задание без преобразований, в том виде, в каком его дали?

Catstail, спасибо

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Как убрать кавычки из названия элемента списка?
import os filename = os.listdir(‘c:\\Files\\Text1’) file = open(filename) Выдаёт ошибку .

Как убрать фигурные скобки из списка
Здравствуйте! Написал программу. Но в списках стоят фигурные скобки. Как их убрать? Файл могу.

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

Удалить из строки все цифры и заключить строку в квадратные скобки
помогите пожалуйста разработать программу в Delphi для решения задачи: Дана строка символов.

Почему все после оператора присвоения взято в квадратные скобки?
li = new_li = print(new_li) new_li = print (new_li) в строке ‘new_li=’ почему все.

Обработка строк: взять все слова, которые состоят из заглавных букв, в квадратные скобки
Здравствуйте,разбираюсь с работой строк в Python,и слегка застряг на одном задании. Задание.

Как убрать скобки при выводе массива python

Наверно самым простым способом будет соединить содержимое массива в строку.

l = [1, 2, 3] ' '.join(l) # 1 2 3 

Есть что добавить? Зарегистрируетесь

Курсы по программированию на Хекслете

Backend-разработка

Разработка серверной части сайтов и веб-приложений

Frontend-разработка

Разработка внешнего интерфейса сайтов и веб-приложений и верстка

Создание сайтов

Разработка сайтов и веб-приложений на JS, Python, Java, PHP и Ruby on Rails

Тестирование

Ручное тестирование и автоматизированное тестирование на JS, Python, Java и PHP

Аналитика данных

Сбор, анализ и интерпретация данных на Python

Интенсивные курсы

Интенсивное обучение для продолжающих

DevOps

Автоматизация настройки локального окружения и серверов, развертывания и деплоя

Веб-разработка

Разработка, верстка и деплой сайтов и веб-приложений, трудоустройство для разработчиков

Математика для программистов

Обучение разделам математики, которые будут полезны при изучении программирования

JavaScript

Разработка сайтов и веб-приложений и автоматизированное тестирование на JS

Python

Веб-разработка, автоматическое тестирование и аналитика данных на Python

Java

Веб-разработка и автоматическое тестирование на Java

PHP

Веб-разработка и автоматическое тестирование на PHP

Ruby

Разработка сайтов и веб-приложений на Ruby on Rails

Go

Курсы по веб-разработке на языке Go

HTML

Современная верстка с помощью HTML и CSS

SQL

Проектирование базы данных, выполнение SQL-запросов и изучение реляционных СУБД

Git

Система управления версиями Git, регулярные выражения и основы командой строки

Похожие вопросы

01 ноября 2021

01 ноября 2021

01 ноября 2021

  • python массивы
  • python строки

01 ноября 2021

  • 8 800 100 22 47 бесплатно по РФ
  • +7 495 085 28 38 бесплатно по Москве

Направления

  • Курсы «Backend-разработка»
  • Курсы «Frontend-разработка»
  • Курсы «Создание сайтов»
  • Курсы «Тестирование»
  • Курсы «Аналитика данных»
  • Интенсивные курсы
  • Курсы DevOps
  • Курсы «Веб-разработка»
  • Курсы «Математика для программистов»
  • Все курсы

О Хекслете

  • О нас
  • Карьера в Хекслете
  • Хекслет Колледж
  • Сведения об образовательной организации
  • Лицензия № Л035-01216-73/00668844

ООО «Хекслет Рус» 432071, г. Ульяновск, пр-т Нариманова, дом 1Г, оф. 23 ОГРН 1217300010476

  • Справка
  • Вопросы и ответы
  • Сообщество
  • Дополнительно
  • Условия использования
  • Соглашение об обработке ПД
  • Оферта
  • Акции

Как убрать кавычки из массива?

Как убрать кавычки из названия элемента списка?
import os filename = os.listdir(‘c:\\Files\\Text1’) file = open(filename) Выдаёт ошибку .

Как убрать из списка все квадратные скобки и кавычки?
Я выводила построчно список студентов из конкретной группы. my_len = ],],]] for i in my_len.

Как убрать кавычки?
У меня вот такой вот кусок кода на РНР mysqli_query($link, "INSERT INTO messages(msg, user).

Как убрать кавычки из строки?
Подскажите, пожалуйста, как убрать все кавычки(") из строки? s= ‘string "with" q"uotes’

Автоматизируй это!

Эксперт Python

7054 / 4559 / 1207
Регистрация: 30.03.2015
Сообщений: 13,132
Записей в блоге: 29

tabbols95, так это ж строка, вот и апострофы (кавычки это вот -» «)
если критично при выводе, то можно так

print(f'')

Эксперт Python

5416 / 3840 / 1214
Регистрация: 28.10.2013
Сообщений: 9,554
Записей в блоге: 1

ЦитатаСообщение от tabbols95 Посмотреть сообщение

Как от них избавляются, подскажите.

Не надо от них избавляться.

Все это — одно и тоже:

1 2 3 4 5 6 7 8 9
>>> "привет" 'привет' >>> repr('привет') "'привет'" >>> str('привет') 'привет' >>> print('привет') привет >>>

просто это разные варианты конечной репрезентации строки.

Добавлено через 6 минут
Кстати, вы похоже, сами эту репрезентацию и изменили — раз print тоже в кавычках выводит.
Если в классе переопределен умолчательный метод вывода строки — будет вот так:

1 2 3
>>> print(repr('привет')) 'привет' >>>

1727 / 967 / 199
Регистрация: 22.02.2018
Сообщений: 2,694
Записей в блоге: 6
tabbols95, Если бы у Вас data содержала бы

[(1, 'Бабаевский'), (3, 'Белозерский'), (4, 'Вашкинский')]

то выводилось бы без кавычек. Как правильно говорит Garry Galler, у Вас программа где то дополнительно к одинарным кавычкам (апострофам) добавляет еще и двойные кавычки (двойные апострофы).
Использование

print(f'')

Вам не поможет. Все выше сказанное демонстрирует пример:

1 2 3 4 5 6 7 8 9 10 11 12
data = [(1, 'Бабаевский'), (3, 'Белозерский'), (4, 'Вашкинский')] print(data[0][1]) print('*' * 50) data = [(1, "'Бабаевский'"), (3, "'Белозерский'"), (4, "'Вашкинский'")] print(data[0][1]) print('*' * 50) data = [(1, "'Бабаевский'"), (3, "'Белозерский'"), (4, "'Вашкинский'")] print(f'')
1 2 3 4 5
Бабаевский ************************************************** 'Бабаевский' ************************************************** 'Бабаевский'

Отсюда следует, что Вам для решения Вашей задачи, как правильно заметил Garry Galler, нужно разобраться с Вашим кодом, что бы в переменную data поступал список без лишних кавычек, то есть поступало

[(1, 'Бабаевский'), (3, 'Белозерский'), (4, 'Вашкинский')]
[(1, "'Бабаевский'"), (3, "'Белозерский'"), (4, "'Вашкинский'")]

Добавлено через 8 минут
Или, что бы как опять же правильно заметил Garry Galler, если Вы используете классы, и у Вас присутствует метод
перегрузки __repr__, который перехватывает вывод инструкцией printer , то нужно правильно использовать этот метод.

Автоматизируй это!

Эксперт Python

7054 / 4559 / 1207
Регистрация: 30.03.2015
Сообщений: 13,132
Записей в блоге: 29

ЦитатаСообщение от Viktorrus Посмотреть сообщение

Вам не поможет.

еще как поможет, в питоне 3.7.0 на макос и 3.7.3 на винде прекрасно работает, как в консоли, так и в пичарме, без всяких проблем

ЦитатаСообщение от Garry Galler Посмотреть сообщение

Если в классе переопределен умолчательный метод вывода строки — будет вот так:

в каком? Автор вызывает у курсора fetchall и сразу выводит, никаких объектов не задействовано

tabbols95, или фетчОлл у тебя возвращает не то что в комменте (а разве не кортеж кортежей?) или даже не знаю, у меня на разных питонах и осях все нормально.

Эксперт Python

5416 / 3840 / 1214
Регистрация: 28.10.2013
Сообщений: 9,554
Записей в блоге: 1

ЦитатаСообщение от Welemir1 Посмотреть сообщение

Автор вызывает у курсора fetchall и сразу выводит, никаких объектов не задействовано
Вот это и странно. Либо ТС нас ввел в заблуждение и на самом деле у него

1 2 3
>>> data = [(1, "'Бабаевский'"), (3, "'Белозерский'"), (4, "'Вашкинский'")] >>> print(data[0][1]) 'Бабаевский'

— здесь кавычки в принте закономерны. И убирать их надо не здесь — так сказать, постфактум, а там, где он их лишний раз проставил.
Либо у него странным образом вместо str стал использоваться repr для вывода строк.

1727 / 967 / 199
Регистрация: 22.02.2018
Сообщений: 2,694
Записей в блоге: 6

ЦитатаСообщение от Welemir1 Посмотреть сообщение

3.7.3 на винде прекрасно работает
Так так и нужно было писать, «Установите версию 3.7.3 и используйте

print(f'')

что бы не вводить людей в заблуждение.
Автоматизируй это!

Эксперт Python

7054 / 4559 / 1207
Регистрация: 30.03.2015
Сообщений: 13,132
Записей в блоге: 29

ЦитатаСообщение от Garry Galler Посмотреть сообщение

где он их лишний раз проставил.

хм, слушай, может они у него в бд с кавычками. в общем желателен скрин от автора где видно в дебаггере что конкретно пришло в дата, ну и версию питона бы узнать.

1727 / 967 / 199
Регистрация: 22.02.2018
Сообщений: 2,694
Записей в блоге: 6

tabbols95, Если нельзя избавится от лишних кавычек по ходу программы, как я понял Вы данные получаете из базы данных, то убрать лишние кавычки перед печатью, что будет работать с любой версией 3.Х , можно добавив следующий фрагмент кода перед печатью

1 2 3 4 5 6 7
data = [(1, "'Бабаевский'"), (3, "'Белозерский'"), (4, "'Вашкинский'")] L = [] for ch in data[0][1]: if ord(ch) != 39: L.append(ch) s = ''.join(L) print(s)

Выводит без кавычек. Может кто нибудь предложит более элегантный вариант, как убрать лишние кавычки.

Добавлено через 18 минут
А вот так будет компактнее в одну строчку

1 2 3
#data = [(1, "'Бабаевский'"), (3, "'Белозерский'"), (4, "'Вашкинский'")] print(data[0][1].split("'")[1])

Но этот вариант будет работать, только если внутри выводимой строки не будет апострофа, иначе строка будет обрезана.

Добавлено через 2 минуты
И еще. Это у Вас будет работать, только если у вас каким либо образом не срабатывает repr .

Добавлено через 6 минут
А вообще, выше верно заметили, что для того, что бы дать конкретную рекомендацию, нужно видеть весь код, а не его фрагмент. Что бы можно было проанализировать его с помощью отладчика.

Добавлено через 12 минут
И еще одно замечание. Если у Вас кавычки идут в другом порядке, а именно так

[(1, '"Бабаевский"'), (3, '"Белозерский"'), (4, '"Вашкинский"')]

то строка должна быть такая

print(data[0][1].split('"')[1])

Добавлено через 4 минуты
Хотя в этом случае, в Вашем варианте вывод был бы таким «Бабаевский». Поэтому скорее всего у Вас первый вариант чередования кавычек.

Добавлено через 33 минуты
Для информации

1 2 3 4 5 6 7 8
>>> ord('"') # двойной апостров в латинице 34 >>> ord('"') # двойные кавычки в кириллице (раскладке клавиатуры) 34 >>> ord("'") # апостроф в латинице 39 >>> # в кирилице одинарной кавычки нет (я не нашел), # поэтому при необходимости >>> # используется апостров из латиницы

Как убрать кавычки из переменной?

ri_gilfanov

Ваш результат это стандартная печать для tuple(это как массив, но в круглых скобках и неизменяемый) с 2 элементами. Это дает круглые скобки и первую запятую (*,*)
Элементы это 2 строки testovaya zapis и ‘1’, ‘129’, ‘123’, ’64’, ‘124’, ‘121’ . Строки по умолчанию отображаются в одинарных кавычках. Но, поскольку вторая строка уже содержит в себе одинарные кавычки, ее написали в двойных.
Вы вероятно хотите получить что-то такое:

('testovaya zapis', '1', '129', '123', '64', '124', '121')

Этого можно добиться разными способами, но но проще всего смотреть на это как на tuple из 7 строчек.

>>> test = 'testovaya zapis' >>> a = [1, 129, 123, 64, 124, 121] >>> res = (test,) + tuple([str(n) for n in a]) >>> print(res) ('testovaya zapis', '1', '129', '123', '64', '124', '121')

(test,) Запятая в конце важна. Это немного странный синтаксис для создания тупла из 1 элемента.
[str(n) for n in a] Это сокращенный вариант записи для цикла:

t = [] for n in a: t.append(str(n))

Массивы можно склеивать только с массивами, а туплы с туплами. Поэтому преобразуем массив в тупл явно.
Чуть проще это выглядит если бы мы хотели получить массив:

>>> res = [test] + [str(n) for n in a] >>> print(res) #квадратные скобки ['testovaya zapis', '1', '129', '123', '64', '124', '121'] >>> print(', '.join(res)) #или без testovaya zapis, 1, 129, 123, 64, 124, 121

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *