即使我从该资源文件导入所有模块,也无法在单独的.py文件中使用任何方法。我有以下结构:
mandarin/
│
├── mandarin/
│ ├── __init__.py
│ ├── mandarin.py
│ └── helpers.py
│
├── .gitignore
├── LICENSE
├── README.md
├── requirements.txt
└── setup.py
初始化 .py内容:
from .helpers import *
from .structures import *
from .exceptions import *
structures.py内容:
PinyinToneMark = {
1: ['\u0101', '\u0113', '\u012b', '\u014d', '\u016b'],
2: ['\u00e1', '\u00e9', '\u00ed', '\u00f3', '\u00fa'],
3: ['\u01ce', '\u011b', '\u01d0', '\u01d2', '\u01d4'],
4: ['\u00e0', '\u00e8', '\u00ec', '\u00f2', '\u00f9']
# a # e # i # o # u
}
PinyinToEnglish = {
'a': ['\u0101', '\u00e1', '\u01ce', '\u00e0'],
'e': ['\u0113', '\u00e9', '\u011b', '\u00e8'],
'i': ['\u012b', '\u00ed', '\u01d0', '\u00ec'],
'o': ['\u014d', '\u00f3', '\u01d2', '\u00f2'],
'u': ['\u016b', '\u00fa', '\u01d4', '\u00f9']
}
exceptions.py内容:
class InvalidCharacters(Exception):
"""Raised when the user types in invalid characters, excluding '?'"""
mandarin.py内容:
import mandarin
try:
user_input = input('enter pinyin: ')
pinyin_string = mandarin.encode_pinyin(user_input)
print(f'user typed in {pinyin_string}')
except mandarin.InvalidCharacters:
print('error')
当尝试使用'helpers.py'中的方法时,出现以下错误:
Traceback (most recent call last):
File "/Users/aclinton/PycharmProjects/mandarin/mandarin/mandarin.py",
line 5, in <module>
pinyin_string = mandarin.encode_pinyin(user_input)
AttributeError: module 'mandarin' has no attribute 'encode_pinyin'
答案 0 :(得分:-1)
尝试:
from mandarin import mandarin
这可能有用。