python writefile ImportError: Нет модуля с именем «mainss_script» - PullRequest
0 голосов
/ 14 сентября 2018
%%writefile mainss_script.py
def count_vowels(sentence):
    """Count the number of vowels in sentence."""
    vowels = 0
    for c in sentence:
        if c.lower() in "aeiouy":
            vowels = vowels + 1
    return vowels

def count_consonants(sentence):
    """Count the number of consonants in sentence."""
    consonants = 0
    for c in sentence:
        if c.isalpha():
            if c.lower() not in "aeiouy":
                consonants = consonants + 1
    return consonants

def count_digits(sentence):
    """Count the number of digits in sentence."""
    digits = 0
    for c in sentence:
        if c.isdigit():
            digits = digits + 1
    return digits
def mainss():
    test_sentence = "Plan 2 is not working!"
    print("Number of vowels = {:d}".format(count_vowels(test_sentence)))
    print("Number of consonants = {:d}".format(count_consonants(test_sentence)))
    print("Number of digits = {:d}".format(count_digits(test_sentence)))

if (__name__=="__main__"):
    mainss()

import mainss_script
mainss_script.mainss()

ImportError                               Traceback (most recent call last)
<ipython-input-66-1fd7edecdd49> in <module>()
----> 1 import mainss_script
      2 mainss_script.mainss()

ImportError: No module named 'mainss_script'

был создан файл mainss_script.py, однако, когда я пытался импортировать его, он возвращает ошибку, почему ??

игнорировать для словатребование игнорировать для слова требование игнорировать для слова требование

1 Ответ

0 голосов
/ 14 сентября 2018

Файл mainss_script.py должен находиться в каталоге, в котором вы запускаете ipython.

Если нет, вы можете вставить его местоположение в sys.path, чтобы переводчик нашел его

import sys
sys.path.insert(0, "path to mainss_script.py")

import mainss_script
mainss_script.mainss()

Кроме того, %%writefile - это команда псевдонима Jupyter для записи содержимого ячейки в файл. Поэтому я предполагаю, что ваш код был скопирован из какой-то записной книжки Jupyter, и при запуске ячейки, содержащей эти строки, создается mainss_script в текущем каталоге.

Если у вас нет этого файла, вставьте эти строки кода , исключая строку, содержащую %%writefile, в файл mainss_script.py в том же каталоге, где вы запускаете IPython .

Если по какой-то причине вы хотите сохранить mainss_script.py в определенном месте, то следуйте приведенным выше инструкциям, чтобы добавить путь к mainss_script в sys.path для переводчик, чтобы найти его. После этого выполните строки для импорта и запуска mainss(), и все должно работать.

...