辞書の文字列表現を辞書に変換する
辞書の文字列表現を辞書に変換するタスクを考慮します。たとえば、
s = "{'muffin' : 'lolz', 'foo' : 'kitty'}"
は、この目的のために評価機能を使用するように誘惑されるかもしれませんが、潜在的なセキュリティリスクのために評価を避けることが望ましいです。ライブラリ:
インポートAST dictionary = ast.literal_eval(s)
import ast dictionary = ast.literal_eval(s)
#危険な例: eval( "shutil.rmtree( 'mongo')") #安全な例: AST.LITERAL_EVAL( "Shutil.rmtree( 'mongo')")
最初の例では、evalは文字列をpythonコードとして実行します。 2番目の例では、ast.literal_evalは文字列を文字通り式として安全に評価し、文字列が奇形であることを示すエラーを上げます。
。免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3