问题描述
File "roster.py",line 17
print(f"{row["first"]} {row["middle"]} {row["last"]},born {row["birth"]}")
^
SyntaxError: invalid Syntax
我的代码:
import sys
from cs50 import sql
if len(sys.argv) != 2:
print("Needs two command-line argument")
exit(1)
db = sql("sqlite:///students.db")
house = sys.argv[1]
results = db.execute("SELECT * FROM students WHERE house = ?",house)
for row in results:
if row["middle"] != None:
print(f"{row["first"]} {row["middle"]} {row["last"]},born {row["birth"]}")
else:
print(f"{row["first"]} {row["last"]},born {row["birth"]}")
解决方法
您的报价有误。试试这个:
for row in results:
if row["middle"] != None:
print(f'{row["first"]} {row["middle"]} {row["last"]},born {row["birth"]}')
else:
print(f'{row["first"]} {row["last"]},born {row["birth"]}')
,
如果您尝试打印row [“ middle”]值,依此类推。
for row in results:
if row["middle"] != None:
print(f"{"+row["first"]+"} {"+row["middle"]+"} {"+row["last"]+"},born {"+row["birth"]+"}")
else:
print(f"{"+row["first"]+"} {"+row["last"]+"},born {"+row["birth"]+"}")