ホームページ  >  記事  >  バックエンド開発  >  Python モジュール sys モジュールとシリアル化モジュール

Python モジュール sys モジュールとシリアル化モジュール

巴扎黑
巴扎黑オリジナル
2017-09-15 10:44:331622ブラウズ

次のエディターは、Python モジュールの sys モジュールとシリアル化モジュールに関する記事を提供します (例による説明)。編集者はこれがとても良いものだと思ったので、皆さんの参考として今から共有します。一緒に見てみましょう

sysモジュール

sysモジュールは、Pythonインタープリタと対話するためのインターフェースです


sys.argv   命令行参数List,第一个元素是程序本身路径
sys.exit(n)  退出程序,正常退出时exit(0),错误退出sys.exit(1)
sys.version  获取Python解释程序的版本信息
sys.path   返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
sys.platform  返回操作系统平台名称

シリアル化モジュール

シリアル化の目的:

作るカスタム オブジェクトを何らかの形式のストレージに永続化する

ある場所から別の場所にオブジェクトを渡す

プログラムをより保守しやすくする

Python モジュール sys モジュールとシリアル化モジュール

json


# Json模块提供了四个功能:dumps、dump、loads、load


import json
dic = {'k1':'v1','k2':'v2','k3':'v3'}
str_dic = json.dumps(dic) #序列化:将一个字典转换成一个字符串
print(type(str_dic),str_dic) #<class &#39;str&#39;> {"k3": "v3", "k1": "v1", "k2": "v2"}
#注意,json转换完的字符串类型的字典中的字符串是由""表示的

dic2 = json.loads(str_dic) #反序列化:将一个字符串格式的字典转换成一个字典
#注意,要用json的loads功能处理的字符串类型的字典中的字符串必须由""表示
print(type(dic2),dic2) #<class &#39;dict&#39;> {&#39;k1&#39;: &#39;v1&#39;, &#39;k2&#39;: &#39;v2&#39;, &#39;k3&#39;: &#39;v3&#39;}


list_dic = [1,[&#39;a&#39;,&#39;b&#39;,&#39;c&#39;],3,{&#39;k1&#39;:&#39;v1&#39;,&#39;k2&#39;:&#39;v2&#39;}]
str_dic = json.dumps(list_dic) #也可以处理嵌套的数据类型 
print(type(str_dic),str_dic) #<class &#39;str&#39;> [1, ["a", "b", "c"], 3, {"k1": "v1", "k2": "v2"}]
list_dic2 = json.loads(str_dic)
print(type(list_dic2),list_dic2) #<class &#39;list&#39;> [1, [&#39;a&#39;, &#39;b&#39;, &#39;c&#39;], 3, {&#39;k1&#39;: &#39;v1&#39;, &#39;k2&#39;: &#39;v2&#39;}]


import json
f = open(&#39;json_file&#39;,&#39;w&#39;)
dic = {&#39;k1&#39;:&#39;v1&#39;,&#39;k2&#39;:&#39;v2&#39;,&#39;k3&#39;:&#39;v3&#39;}
json.dump(dic,f) #dump方法接收一个文件句柄,直接将字典转换成json字符串写入文件
f.close()

f = open(&#39;json_file&#39;)
dic2 = json.load(f) #load方法接收一个文件句柄,直接将文件中的json字符串转换成数据结构返回
f.close()
print(type(dic2),dic2)


りー

pickle

json & pickle

json、文字列と Python データ型間の変換に使用

pickle、Python 固有の型と Python データ型間の変換に使用


import json
f = open(&#39;file&#39;,&#39;w&#39;)
json.dump({&#39;国籍&#39;:&#39;中国&#39;},f)
ret = json.dumps({&#39;国籍&#39;:&#39;中国&#39;})
f.write(ret+&#39;\n&#39;)
json.dump({&#39;国籍&#39;:&#39;美国&#39;},f,ensure_ascii=False)
ret = json.dumps({&#39;国籍&#39;:&#39;美国&#39;},ensure_ascii=False)
f.write(ret+&#39;\n&#39;)
f.close()

ensure_ascii关键字参数

shelve


りー


りー


りー

以上がPython モジュール sys モジュールとシリアル化モジュールの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。