Python常见报错-持续更新

1. 路径报错、正确添加路径

路径错误可能是由于反斜杠 \ 的使用问题。在 Python 中,反斜杠 \ 是转义字符,所以需要进行正确的处理。可以通过以下几种方式正确表示文件路径:

  1. 使用双反斜杠 \\:

    cnn_model_path = 'E:\\code\\testdemo\\first\\models\\best_model_CNN.pth'
    
  2. 在字符串前加上 r,表示这是一个原始字符串(raw string):

    cnn_model_path = r'E:\code\testdemo\first\models\best_model_CNN.pth'
    
  3. 使用正斜杠 /:

    cnn_model_path = 'E:/code/testdemo/first/models/best_model_CNN.pth'
    

可以选择其中一种方式来正确定义路径,确保路径能够被正确识别。

2. 函数调用参数位置报错

2.1 SyntaxError: positional argument follows keyword argument

出现的错误是 SyntaxError: positional argument follows keyword argument。这个错误通常是因为在函数调用时,位置参数被放在了关键字参数之后。

#例如
metrics_cnn = train_and_evaluate(cnn, train_loader, val_loader, test_loader, device, num_epochs=3, model_name='CNN', best_model_path=cnn_model_path, )

在上述的代码中,函数 train_and_evaluate 被调用时,第一个参数 model_cnn 是一个位置参数,然而后面的 model_name='CNN' 是一个关键字参数,最后的 cnn_model_path 又是一个位置参数。Python 要求位置参数必须在关键字参数之前。

要解决这个问题,需要将所有的关键字参数放在所有的位置参数之后。

metrics_cnn = train_and_evaluate(model_cnn, train_loader, val_loader, test_loader, device, num_epochs=3, best_model_path=cnn_model_path, model_name='CNN')
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值