相关疑难解决方法(0)

Python中exit()和sys.exit()之间的区别

在Python中,有两个同名的函数,exit()sys.exit().有什么区别,什么时候应该使用一个而不是另一个?

python exit

389
推荐指数
3
解决办法
28万
查看次数

Python中主函数的标准返回值是什么?

我正在帮助我在大学的课程项目,我们有一个脚本,它取决于其中一个模块的主要功能的返回值(通过main函数,我的意思是"main()").但是在该函数中,没有值返回代码已经成功完成它应该完成的事情,或者没有.那么,如果函数中没有"return"语句,那么当它到达函数末尾时返回的标准值是多少?

python program-entry-point return

2
推荐指数
1
解决办法
5194
查看次数

如何从 shell 脚本中捕获 Spark 错误

我在 AWS Data Pipeline 中有一个管道,它运行一个名为 shell.sh 的 shell 脚本:

$ spark-submit transform_json.py


Running command on cluster...
[54.144.10.162] Running command...
[52.206.87.30] Running command...
[54.144.10.162] Command complete.
[52.206.87.30] Command complete.
run_command finished in 0:00:06.
Run Code Online (Sandbox Code Playgroud)

AWS Data Pipeline 控制台显示作业已“完成”,但在 stderr 日志中,我看到作业实际上已中止:

Caused by: com.amazonaws.services.s3.model.AmazonS3Exception: Status Code: 404, AWS Service: Amazon S3, AWS Request ID: xxxxx, AWS Error Code: null, AWS Error Message: Not Found...        
Caused by: org.apache.spark.SparkException: Job aborted due to stage failure: Task 0 in stage 5.0 failed 1 times, most recent …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services amazon-data-pipeline apache-spark

2
推荐指数
1
解决办法
775
查看次数

Python返回代码

最近我一直在问几个关于Python中更专业和pythonic风格的问题,尽管我的问题给出了很好的答案,但我觉得我需要提出一个更广泛的问题.

通常,当编写实用函数(对于库等)处理更多副作用(文件写入,字典定义等)而不是返回值时,返回状态代码以告诉调用函数它是非常有用的通过或失败.

在Python中,似乎有三种标记方式:

使用返回值-1或0(C like)并使用诸如的语句

if my_function(args) < 0:
    fail condition
pass condition
Run Code Online (Sandbox Code Playgroud)

或使用返回值True/False

if not my_function(args):
     fail condition
pass condition
Run Code Online (Sandbox Code Playgroud)

或使用'return或'return None'使用异常(退出未知错误)

try:
    my_function(args)
except ExpectedOrKnownExceptionOrError:
    fail condition
pass condition
Run Code Online (Sandbox Code Playgroud)

哪个最好?最正确的?首选?我理解所有的工作,并且没有太多的技术优势(除了可能是异常处理的开销).

python styles

1
推荐指数
1
解决办法
1923
查看次数