Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.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 - Fatal编程技术网

在使用用户输入的值构建python字典时,是否需要转义字符串?

在使用用户输入的值构建python字典时,是否需要转义字符串?,python,Python,我正在使用瓶子的请求对象获取用户输入 然后我创建了一个字典作为 dict = {..., 'user_text': request.params.get('user_text'), ..., } 是否有可能导致本词典中断的输入?例如,以某种方式使用冒号字符。我是否应该将request.params.get('user_text')转换为unicode否,因为您没有将用户输入作为Python表达式进行计算;请求参数始终是Python对象(本例中为字符

我正在使用瓶子的请求对象获取用户输入

然后我创建了一个字典作为

dict = {...,
        'user_text': request.params.get('user_text'),
        ...,
       }

是否有可能导致本词典中断的输入?例如,以某种方式使用冒号字符。我是否应该将request.params.get('user_text')转换为unicode

否,因为您没有将用户输入作为Python表达式进行计算;请求参数始终是Python对象(本例中为字符串)


只有当您将请求参数解释为某种形式的代码(pickles、SQL、带有
eval()
exec的python表达式)或允许其他程序解释参数(浏览器中的HTML、插入JavaScript的值等),您才需要担心转义。

否,您不需要转义
user\u文本
param。没有问题,您的dict将始终被构建(当然,如果
request.params.get('user_text')
返回一些内容)。

我必须将此字典作为JSON编码字符串存储在数据库中,我使用JSON.dumps(dict)。我需要一些转义吗?不,JSON库为您处理任何转义。