基本上,我想在两个变量的列表中迭代5次,然后以迭代的方式填充输出。我可能描述得不够好,所以我将展示我想要得到的。我将在query2变量中使用一个多行查询,但为了解决这个问题,我对它进行了一些简化。
以下是我正在编写的代码:
systems = ["prd1", "prd2", "frz1", "frz2", "dev"]
qgsystems = ["Prd1_v2", "Prd2_v2", "Frz1_v2", "Frz2_v2", "Devl_v2"]
query2 = f"""{{fn blah({x}_1_output.csv)}}select {y};"""
for x, y in zip(systems, qgsystems):
print(query2)
我想要得到的结果是:
{fn blah(prd1_1_output.csv)}select Prd1_v2;
{fn blah(prd2_1_output.csv)}select Prd2_v2;
{fn blah(frz1_1_output.csv)}select Frz1_v2;
{fn blah(frz2_1_output.csv)}select Frz2_v2;
{fn blah(dev_1_output.csv)}select Devl_v2;
但我得到的却是:
{fn blah(dev_1_output.csv)}select Devl_v2;
{fn blah(dev_1_output.csv)}select Devl_v2;
{fn blah(dev_1_output.csv)}select Devl_v2;
{fn blah(dev_1_output.csv)}select Devl_v2;
{fn blah(dev_1_output.csv)}select Devl_v2;
我做错了什么?
当我开始新的课程时,我会更接近问题所在。但我还是被卡住了。
---------------------------------------------------------------------------
NameError Traceback (most recent call last)
<ipython-input-1-3ea2eb0d6f53> in <module>
1 systems = ["prd1", "prd2", "frz1", "frz2", "dev"]
2 qgsystems = ["Prd1_v2", "Prd2_v2", "Frz1_v2", "Frz2_v2", "Devl_v2"]
----> 3 query2 = f"""{{fn blah({x}_1_output.csv)}}select {y};"""
4 for x, y in zip(systems, qgsystems):
5 print(query2)
NameError: name 'x' is not defined