我想接受某个数字(例如-3),以评估with
语句中的条件。我确实发现可以做类似this的事情。我可以通过评估条件来在with
语句中执行与以下操作类似的操作:
def foo(num):
with open("1.txt","a") as f1, open("2.txt") as f2 <<if num >= 2>>, open("3.txt") as f3 <<if num >= 3>>:
if num >= 1:
f1.write("1")
if num >= 2:
f2.write("2")
if num >= 3:
f3.write("3")
这可能吗?还有什么其他方法可以评估with
语句中涉及的对象的if条件,以便我使用与num
中完全相同的对象数?
P.S。:上面的代码仅是使用文件的示例,也可以用对象代替。