Вопрос №55490 от пользователя Сергей Гаранин в уроке «Цели тестирования», курс «Python: Автоматическое тестирование»

Сергей Гаранин

Добрый день! У меня в проекте две поддиректории tasks и test Возникла проблема импорта, которую получилось устранить так

export PYTHONPATH="$(pwd)"
python tests/test_capitalize.py

После этого пропала проблема импорта, которая была жо этого. НО теперь выдает ошибку синтаксиса :

(venv) Mealok@MacBook-Pro-uzer study_tasks % export PYTHONPATH="$(pwd)"
(venv) Mealok@MacBook-Pro-uzer study_tasks % python tests/task14_test.py    
Traceback (most recent call last):
  File "tests/task14_test.py", line 1, in <module>
    from tasks import task14
  File "/Users/Mealok/PycharmProjects/study_tasks/tasks/task14.py", line 15
    yield from (char for i in range(n))

Ошибка пропадает если я переписываю функцию так

def replicate_each(n, xs):
    for char in xs:
        for i in range(n):
            yield char
        # yield from (char for i in range(n))

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

python tests/task14_test.py    

тогда ошибка

4 0

Сергей Гаранин

Заметил еще особенность, если есть русский язык в коде, тогда тоже вылетает ошибка

0

Aleksei Pirogov

Ошибка пропадает если я переписываю функцию так

если есть русский язык в коде, тогда тоже вылетает ошибка

Вы скорее всего запускаете код на Python старше 3.6, отсюда у вас проблемы и с кодировками, и с yield from.

0

Сергей Гаранин

Aleksei Pirogov,

Mealok@MacBook-Pro-uzer tests % python3 --version
Python 3.8.2
0

Aleksei Pirogov

Сергей Гаранин, так вы покажите версию пайтона в виртуальном окружении, а не системного. Вы же выше показали ошибку, возникающую при запуске из venv:

(venv) Mealok@MacBook-Pro-uzer study_tasks % python tests/task14_test.py

Вот ^

1

Используйте Хекслет по-максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»
Рекомендуемые программы
профессия
от 6 300 ₽ в месяц
Разработка фронтенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 8 июня
профессия
от 5 025 ₽ в месяц
новый
Сбор, анализ и интерпретация данных
9 месяцев
с нуля
Старт 8 июня
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Django
10 месяцев
с нуля
Старт 8 июня
профессия
от 6 300 ₽ в месяц
Разработка приложений на языке Java
10 месяцев
с нуля
Старт 8 июня
профессия
от 6 300 ₽ в месяц
Разработка веб-приложений на Laravel
10 месяцев
с нуля
Старт 8 июня
профессия
от 6 183 ₽ в месяц
Ручное тестирование веб-приложений
4 месяца
с нуля
Старт 8 июня
профессия
от 6 300 ₽ в месяц
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 8 июня
профессия
от 10 080 ₽ в месяц
Разработка фронтенд- и бэкенд-компонентов для веб-приложений
16 месяцев
с нуля
Старт 8 июня
профессия
от 5 840 ₽ в месяц
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 8 июня
профессия
Верстка с использованием последних стандартов CSS
5 месяцев
с нуля
Старт в любое время
профессия
от 6 300 ₽ в месяц
новый
Автоматизированное тестирование веб-приложений на JavaScript
10 месяцев
с нуля
в разработке
дата определяется