Ejecutando el archivo sh o ejecutando el proyecto --dataset: comando no encontrado y SyntaxError: EOL mientras escanea el literal de cadena

–conjunto de datos: comando no encontrado

Mi error o como solucionarlo

El contenido del archivo shell original

python main.py 
  --phase train \
  --dataset_name day-night \
  --lambda_A 1000.0 \
  --lambda_B 1000.0 \
  --epoch 1000 \
  --GAN_type wgan

cambiado a

python main.py --phase train --dataset_name day-night --lambda_A 1000.0 --lambda_B 1000.0 --epoch 1000 --GAN_type wgan

poder

En general, o la principal causa de error.

De hecho, el parámetro no se agrega. El código tiene los siguientes requisitos, por lo que debe agregarse, a menos que tenga un valor predeterminado

inserte la descripción de la imagen aquí

Agregue –dataset a los parámetros en la imagen a continuación en pycharm.Si
inserte la descripción de la imagen aquí
es un archivo de shell, lo mismo es cierto

SyntaxError: EOL al escanear literal de cadena

Mi error

print("Hello World!')

Buen chico, ¿no puedes verlo?
También baidu durante mucho tiempo, y luego descubrí accidentalmente que en la impresión, hay comillas dobles al frente y comillas simples en la parte posterior. Este es el problema.
cambiado a

print("Hello World!")

Así es

En segundo lugar, la razón más probable del problema es que la ruta de empalme de código en Windows es propensa a este error.

Esto se debe a que la cadena en python no puede terminar con \. Si desea dividir la línea cuando la cadena es demasiado larga en python, puede usar una barra invertida para dividir la línea, por lo que la barra invertida no puede ir seguida inmediatamente por las comillas en el final de la cadena.
Por ejemplo, path = r'D:\code\git\’ + image_name
cuando se ejecuta de esta manera, se informará un error.

La solución a esto también es muy simple
Método 1: use os.path.join

path = os.path.join(r'D:\code\git', image_name)

Método 2: la barra invertida de la ruta se escapa en lugar de r

path = 'D:\\code\\git\\' + image_name

Método 3: cadena de formato

dirname="test"
path = r'D:\code\git\%s' % (image_name)  # 第一种格式化方法
#从 python 2.6 开始
path = r'D:\code\git\{}'.format(image_name) # 第二种格式化方法

Método 4: interpolación de cadenas (interpolación de cadenas)

# python 3.6 开始 支持string interpolation
image_name= "test"
path3 = rf'D:\code\git\{
      
      image_name}' 

Referencia https://cloud.tencent.com/developer/article/1649026

Sin mencionar las comillas dobles al frente y las comillas simples al final, como

El salto de línea \ en el archivo shell mantiene los símbolos continuos eliminados y cambiados a un espacio en lugar de un salto de línea

Supongo que te gusta

Origin blog.csdn.net/weixin_42455006/article/details/127018448
Recomendado
Clasificación