#python-3.x
Вопрос:
Я пытаюсь запустить следующий скрипт python:
#!/usr/bin/env python
#Author Jared Adolf-Bryfogle
#Python Imports
import os
import sys
from pathlib import Path
from typing import Union
#Append Python Path
p = os.path.split(os.path.abspath(__file__))[0] "/src"
sys.path.append(p) #Allows all modules to use all other modules, without needing to update pythonpath
#Project Imports
from pic2.modules.chains.ProposedIgChain import ProposedIgChain
from pic2.modules.chains.IgChainSet import IgChainSet
from pic2.modules.chains.IgChainFactory import IgChainFactory
from pic2.modules.chains.AbChainFactory import AbChainFactory
from pic2.tools.fasta import *
class IgClassifyFASTA:
"""
Identify CDRs from a Fasta File
"""
def __init__(self, fasta_path: Union[Path, str]):
self.fasta_path = str(fasta_path)
self.outdir = os.getcwd()
self.outname = "classified"
self.fasta_paths = split_fasta_from_fasta(os.path.abspath(self.fasta_path), "user_fasta_split_" self.outname, self.outdir)
def __exit__(self):
for path in self.fasta_paths:
if os.path.exists(path):
os.remove(path)
def set_output_path(self, outdir: Union[Path, str]):
self.outdir = str(outdir)
def set_output_name(self, outname: Union[Path, str]):
self.outname = str(outname)
Моя версия python-3.8, а pic2-это conda env. Я получаю следующую ошибку:
File "IgClassifyFASTA.py", line 29
def __init__(self, fasta_path:Union[Path, str]):
SyntaxError: invalid syntax
Я не могу понять, что не так с этой строкой. Не могли бы вы любезно намекнуть мне, в чем дело? Я буду признателен за любую помощь.
С наилучшими пожеланиями!
Комментарии:
1. Единственный способ, которым я могу воспроизвести вашу ошибку, — это если я попытаюсь запустить ее в интерпретаторе Python 2.7, который не поддерживает подсказки типа, которые вы используете.
2. Можете ли вы разместить
print(sys.version)
где-нибудь перед вашимclass
определением и опубликовать результат?3. @Axe319 print(sys.версия) не выдает никаких выходных данных при размещении перед определением класса. Скрипт выдал то же сообщение об ошибке, что и раньше.
4. Ты уверен? На нем должно быть напечатано что-то вроде
3.9.7 (tags/v3.9.7:1016ef3, Aug 30 2021, 20:19:38) [MSC v.1929 64 bit (AMD64)]
. По крайней мере, он что-то печатает. Если это не так, вы, вероятно, запускаете не тот сценарий, который, по вашему мнению, вы запускаете.5. Я уверен, что выполняю точный сценарий.