这是我目前所拥有的,不起作用的地方:
if "Forwarder" not in shp_name or "T_" not in shp_name or "Grad" not in shp_name:
我也试过了:
if ("Forwarder", "T_", "Grad") not in shp_name:
输入的样本将是“DS_Forwarder_1”或“DS_Harvester_1”。该脚本直接进入else
,因为它无法识别主字符串中的任何上述子字符串。
答案 0 :(得分:5)
尝试使用内置的any
。
if any(s in shp_name for s in ("Forwarder", "T_", "Grad")):
...
如果shp_name
中存在任何给定字符串,则为真。如果在其中一个字符串存在时需要False,则可以使用if not any(...
。