Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/flutter/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中将字段名分配给变量_Python_Variables_Csv - Fatal编程技术网

在Python中将字段名分配给变量

在Python中将字段名分配给变量,python,variables,csv,Python,Variables,Csv,我是Python新手,我正在尝试检查正在处理的csv中是否有空值。我正在使用具有密钥对值的DictReader对象。我使用for循环中的密钥对值来打印信息(在本例中为kml) 我去运行程序,它不喜欢我的变量赋值。这是我收到的错误 File "./csvtokml3.py", line 31 Latvariable = str(row["lat_degrees"]),Longvariable = str(row["lon_degrees"]) SyntaxError: can't assi

我是Python新手,我正在尝试检查正在处理的csv中是否有空值。我正在使用具有密钥对值的DictReader对象。我使用for循环中的密钥对值来打印信息(在本例中为kml)

我去运行程序,它不喜欢我的变量赋值。这是我收到的错误

File "./csvtokml3.py", line 31
    Latvariable = str(row["lat_degrees"]),Longvariable = str(row["lon_degrees"])
SyntaxError: can't assign to function call
这是程序的代码

#!/usr/bin/python


#
#
#

import csv

#Input the file name.
fname = raw_input("Enter file name WITHOUT extension: ")

data = csv.DictReader(open(fname + '.csv'), delimiter = ',')

#Open the file to be written.
f = open('csv2kml.kml', 'w')

#Writing the kml file.
f.write("<?xml version='1.0' encoding='UTF-8'?>\n")
f.write("<kml xmlns='http://www.opengis.net/kml/2.'>\n")
f.write("<Document>\n")
f.write("   <name>" + fname + '.kml' +"</name>\n")

for row in data:

    f.write("   <Placemark>\n")
    f.write("       <name>" + str(row["station"]) + "</name>\n")
    ### f.write("       <description>" + str(row[0]) + "</description>\n")
    f.write("       <Point>\n")
    #Check for nulls for lat and long
    Latvariable = str(row["lat_degrees"]),  Longvariable = str(row["lon_degrees"])
    if Latvariable !=null and Longvariable !=null:
        f.write("           <coordinates>" + str(row["lat_degrees"]) + "," + str(row["lon_degrees"]) + "</coordinates>\n")
    f.write("       </Point>\n")
    f.write("   </Placemark>\n")

f.write("</Document>\n")
f.write("</kml>\n")
f.close()

print "File Created. "
print "Press ENTER to exit. "
raw_input()
#/usr/bin/python
#
#
#
导入csv
#输入文件名。
fname=原始输入(“输入文件名,不带扩展名:”)
data=csv.DictReader(打开(fname+'.csv'),分隔符=',')
#打开要写入的文件。
f=打开('csv2kml.kml','w')
#正在写入kml文件。
f、 写入(“\n”)
f、 写入(“\n”)
f、 写入(“\n”)
f、 写入(“+fname+'.kml'+“\n”)
对于数据中的行:
f、 写入(“\n”)
f、 写入(“+str(行[“站”])+“\n”)
###f.write(“+str(第[0]行])+“\n”)
f、 写入(“\n”)
#检查横向和纵向的空值
Latvariable=str(第[“lat_度”]行),Longvariable=str(第[“lon_度”]行)
如果是可变的=null和Longvariable=无效的:
f、 写入(“+str(行[“纬度])+”,“+str(行[“纬度]))+”\n”)
f、 写入(“\n”)
f、 写入(“\n”)
f、 写入(“\n”)
f、 写入(“\n”)
f、 关闭()
打印“已创建文件”
打印“按回车键退出”
原始输入()

您的语法不正确,您需要:

Latvariable, Longvariable = str(row["lat_degrees"]), str(row["lon_degrees"])
而是将多个值指定给多个名称。或者,将这两个语句放在单独的行上:

Latvariable = str(row["lat_degrees"])
Longvariable = str(row["lon_degrees"])

不能像您尝试的那样将多个赋值语句与逗号组合;这在JavaScript中有效,但在Python中不起作用。

在逗号处打断第31行,,或者如果希望两个赋值都在同一行上,请这样写:
Latvariable,Longvariable=str(行[“lat_度]),str(行[“lon_度])