Python3.9运行代码提示invalid syntax语法错误如何解决
Python 3.9运行脚本报invalid syntax错误修复
错误原因
报错指向的第928行代码不符合Python函数定义的语法规则:
def smb_send_file(smbConn, '/home/user/hackthebox/blue/eternalblue.exe', 'C', '/eternalblue.exe'):
用def关键字定义函数时,括号里的参数列表只能放形参对应的变量名,不能直接把字符串字面量写在形参位置,Python解析到这行不符合语法规范的内容时,就会直接抛出invalid syntax错误。
修复方法
本质是把函数定义和函数调用的写法搞混了,根据实际需求二选一处理即可:
- 如果这行是要定义smb_send_file函数:把参数位置的固定路径字符串替换成合法的形参变量名,函数内部再写具体的SMB文件传输逻辑,参考写法:
def smb_send_file(smbConn, local_file_path, remote_drive, remote_file_path): # 在这里写SMB发送文件的具体实现逻辑 pass
等真正需要执行文件发送操作的时候,再把具体的路径作为实参传入调用:
smb_send_file(smbConn, '/home/user/hackthebox/blue/eternalblue.exe', 'C', '/eternalblue.exe')
- 如果
smb_send_file函数已经在其他位置定义完成,这行只是想调用这个函数执行发送操作:直接删掉行首的def关键字,保留后面的函数调用语句就行。
内容的提问来源于stack exchange,提问作者Abdulmajeed
相关产品推荐
相关产品推荐

