捕捉 exceptions/errors
Catching exceptions/errors
我完全是 Python 的新手,我需要你的详细建议。
所以我在下面为一个脚本创建了这个循环,该脚本具有第一个输入 "gene_name",从 .csv 文件读取。我如何编写代码来捕获 "gene_name" 为 none 的情况,即 gene_name = row.strip()
在该行中没有任何内容。
我对创建自定义异常感到很困惑(不确定我是否正确使用了这个词),主要是关于如何填充 try-except 事物的一般模式。
谢谢!
if __name__ == '__main__':
with open('gene_list.csv', 'rU') as f:
reader = csv.reader(f)
for row in reader:
gene_name = row.strip()
probes_dict = get_probes_from_genes(gene_name)
expression_values, well_ids, well_coordinates, donor_names = get_expression_values_from_probe_ids(probes_dict.keys()) #moving on
print get_mni_coordinates_from_wells(well_ids)
要创建您自己的异常,您需要创建一个继承自 Exception 的 class。我无法从您的代码中看出您希望知道有条件失败的地方,但这给出了一般模式
class GeneNameException(Exception):
pass
try:
...
if negative_condition:
raise GeneNameException()
...
except GeneNameException as e:
<clean_up>
我完全是 Python 的新手,我需要你的详细建议。
所以我在下面为一个脚本创建了这个循环,该脚本具有第一个输入 "gene_name",从 .csv 文件读取。我如何编写代码来捕获 "gene_name" 为 none 的情况,即 gene_name = row.strip()
在该行中没有任何内容。
我对创建自定义异常感到很困惑(不确定我是否正确使用了这个词),主要是关于如何填充 try-except 事物的一般模式。
谢谢!
if __name__ == '__main__':
with open('gene_list.csv', 'rU') as f:
reader = csv.reader(f)
for row in reader:
gene_name = row.strip()
probes_dict = get_probes_from_genes(gene_name)
expression_values, well_ids, well_coordinates, donor_names = get_expression_values_from_probe_ids(probes_dict.keys()) #moving on
print get_mni_coordinates_from_wells(well_ids)
要创建您自己的异常,您需要创建一个继承自 Exception 的 class。我无法从您的代码中看出您希望知道有条件失败的地方,但这给出了一般模式
class GeneNameException(Exception):
pass
try:
...
if negative_condition:
raise GeneNameException()
...
except GeneNameException as e:
<clean_up>