На моем Mac OSX pyenv python 3.7.3 простой базовый конвертер завершается неудачно с
File "/Users/geo/.pyenv/versions/3.7.3/lib/python3.7/string.py", line 88, in Template
flags = _re.IGNORECASE
тот же код работает с brew 3.7.3
переустановил pyenv 3.7.3 и сравнил 3.7.3 / lib / python3.7 / string.py (они одинаковые), вот программа
import sys
import string
digs = string.digits + string.ascii_letters
def d2b(x, b):
if x < 0:
sign = -1
elif x == 0:
return digs[0]
else:
sign = 1
x *= sign
digits = []
while x:
digits.append(digs[int(x % b)])
x = int(x / b)
if sign < 0:
digits.append('-')
digits.reverse()
return ''.join(digits)
print(d2b(int(sys.argv[1]),int(sys.argv[2])))
Вот успех и неудачный вызов ...
/usr/local/bin/python3 lang/py/d2b.py 17 16
11
/Users/geo/.pyenv/versions/3.7.3/bin/python3.7 lang/py/d2b.py 17 16
0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987,Traceback (most recent call last):
File "lang/py/d2b.py", line 3, in <module>
import string
File "/Users/geo/.pyenv/versions/3.7.3/lib/python3.7/string.py", line 78, in <module>
class Template(metaclass=_TemplateMetaclass):
File "/Users/geo/.pyenv/versions/3.7.3/lib/python3.7/string.py", line 88, in Template
flags = _re.IGNORECASE
AttributeError: module 're' has no attribute 'IGNORECASE'
Спасибо за любые советы о том, где искать дальше!