Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.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编译用户dict以获得搜索结果_Python_Sql_Json - Fatal编程技术网

用Python编译用户dict以获得搜索结果

用Python编译用户dict以获得搜索结果,python,sql,json,Python,Sql,Json,我对Python或SQL不是很熟悉,我的任务是创建一个搜索结果页面来显示SQL数据库中的用户信息。我正在使用flask,将JSON对象从python后端发送到javascript/jquery前端。当搜索(通过电子邮件地址搜索)仅返回一个用户时,我已成功显示一个用户,代码如下: user = db.execute( 'SELECT * FROM user WHERE email = ?', (emailInput,) ).fetchone()

我对Python或SQL不是很熟悉,我的任务是创建一个搜索结果页面来显示SQL数据库中的用户信息。我正在使用flask,将JSON对象从python后端发送到javascript/jquery前端。当搜索(通过电子邮件地址搜索)仅返回一个用户时,我已成功显示一个用户,代码如下:

 user = db.execute(
            'SELECT * FROM user WHERE email = ?', (emailInput,)
        ).fetchone()
        if user is None:
            user_details = {
                'first' : 'error'
            }
            y = json.dumps(user_details)
            return jsonify(y)
        if user['first'] is None:
            first = ""
        else:
            first = user['first']
        if user['email'] is None:
            email = ""
        else:
            email = user['email']
        if user['last'] is None:
            last = ""
        else:
            last = user['last']
        if user['address_line1'] is None:
            address_line1 = ""
        else:
            address_line1 = user['address_line1']
        if user['address_line2'] is None:
            address_line2 = ""
        else:
            address_line2 = user['address_line2']
        if user['username'] is None:
            username = ""
        else:
            username = user['username']
        user_details = {
            'first': first,
            'last': last,
            'email': email,
            'address1': address_line1,
            'address2': address_line2,
            'username': username
        }
        y = json.dumps(user_details)
        return jsonify(y)
现在我想用一个fetchall()来升级这段代码,以返回通过SQL调用获取的每个用户的用户详细信息,但我不知道该怎么做。提前谢谢你的帮助

编辑: 我真正需要的帮助是将多个结构转换为如下所示:

    user_details = {
        'first': first,
        'last': last,
        'email': email,
        'address1': address_line1,
        'address2': address_line2,
        'username': username
    }
变成这样一个大结构:

        users = {
            user_details1 = {
                'first': first,
                'last': last,
                'email': email,
                'address1': address_line1,
                'address2': address_line2,
                'username': username
            }
            user_details2 = {
                'first': first,
                'last': last,
                'email': email,
                'address1': address_line1,
                'address2': address_line2,
                'username': username
            }
            etc.
        }

与其花几个小时来解决这个特定的SQL问题,不如花几个小时来学习,这样就不必再编写SQL:)

fetchall
返回一个列表列表,所以只需迭代外部列表(表中的行)。例如:

users = db.execute(
            'SELECT * FROM user WHERE email = ?', (emailInput,)
        ).fetchall()
for user in users:
        if user['first'] is None:
            <etc>
users=db.execute(
'从电子邮件=?'的用户中选择*,(emailInput,)
).fetchall()
对于用户中的用户:
如果用户['first']为无: