Tag: python 3.x

Python: итерация по подсписке

Как правило, когда вы хотите перебирать часть списка на Python, проще всего просто нарезать список. # Iterate over everything except the first item in a list # items = [1,2,3,4] iterrange = (x for x in items[1:]) Но оператор среза создает новый список, который даже не нужно делать во многих случаях. В идеале, мне нужна […]

Почему символ «{» остается, когда f "\ {10}" оценивается в Python 3.6?

f-string является одной из новых функций в Python 3.6. Но когда я пробую это: >>> f"\{10}" '\\{10' Я не могу понять, почему левая фигурная скобка '{' остается в результате. Я предположил, что результат должен быть одинаковым с str.format : >>> "\{}".format(10) '\\10' В PEP-0498 он не отвечает на это явно. Итак, что же приводит к […]

Pythonwin – функция печати не работает

Я запускаю pywin32 build 216.1, и у меня возникли проблемы с использованием простой функции печати – например: >>> print 'Hello!' должен вернуться: Hello! но вместо этого я получаю: Traceback ( File "<interactive input>", line 1 print 'Hello!' ^ SyntaxError: invalid syntax Неважно, что я пытаюсь использовать с печатью, это дает мне такую ​​же ошибку. Я […]

Ошибка при компиляции cx_Freeze на Ubuntu

Я использую Python 3.3.2 на Ubuntu, когда я скомпилировал cx_Freeze из исходного кода, произошла следующая ошибка: любые идеи? philip@linuxmint ~/cx_Freeze-4.3.2 $ sudo python3 setup.py install [sudo] password for philip: adding base module named _dummy_thread adding base module named _frozen_importlib adding base module named _strptime adding base module named _threading_local adding base module named _weakrefset adding […]

Включение отформатированного итерации как части большей форматированной строки

При написании класса недавно я сначала включил метод __repr__ в следующих строках: return "{}({!r}, {!r}, {!r})".format( self.__class__.__name__, self.arg1, self.arg2, self.arg3) Повторение фрагмента «{! R}», похоже, ошибочно, и было бы утомительно поддерживать, если я когда-либо добавлю больше аргументов в этот класс. Тем не менее, более надежные альтернативы, которые произошли со мной, не собираются выигрывать какие-либо призы […]

Какова эквивалентность в Python 3 букв в Python 2?

В Python 2 вы получаете >>> from string import * >>> letters 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' Но в Python 3 вы получаете >>> from string import * >>> letters Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name 'letters' is not defined Он не определен, тогда как digits и whitespace . Какова эквивалентность letters […]

Переменная String как href в lxml.builder

Я создаю таблицу HTML из списка через lxml.builder и стараюсь сделать ссылку в одной из ячеек таблицы Список создается следующим образом: with open('some_file.html', 'r') as f: table = etree.parse(f) p_list = list() rows = table.iter('div') p_list.append([c.text for c in rows]) rows = table.xpath("body/table")[0].findall("tr") for row in rows[2:]: p_list.append([c.text for c in row.getchildren()]) HTML-файл, который я […]

имя файла vs file object как аргумент функции

Если функция принимает в качестве ввода имя текстового файла, я могу его реорганизовать, вместо этого возьму файл-объект (я называю его «потоком», есть ли лучшее слово?). Преимущества очевидны – функция, которая принимает поток в качестве аргумента: гораздо проще написать единичный тест, так как мне не нужно создавать временный файл только для теста более гибкий, поскольку я […]

Обработка ошибок Unicode с помощью readlines Python 3 ()

Я продолжаю получать эту ошибку при чтении текстового файла. Можно ли обрабатывать / игнорировать его и продолжать? UnicodeEncodeError: кодек 'charmap' не может декодировать байт 0x81 в позиции 7827: символьные карты не определены.

Округление Python3 до ближайшего четного

Python3.4 округляется до ближайшего ровного (в случае тай-брейка). >>> round(1.5) 2 >>> round(2.5) 2 Но это только делает это при округлении до целого числа. >>> round(2.75, 1) 2.8 >>> round(2.85, 1) 2.9 В последнем примере выше я ожидал бы 2.8 в качестве ответа при округлении до ближайшего четного. Почему существует несоответствие между двумя типами поведения?

Python - лучший язык программирования в мире.