导航:首页 > 编程语言 > json转换字典

json转换字典

发布时间:2023-01-22 20:52:40

❶ Swift 字典转换为jsONString JSONString转换为字典

1、JSONString转换为字典

/// JSONString转换为字典

    ////// - Parameter jsonString: <#jsonString description#>/// - Returns: <#return value description#>func getDictionaryFromJSONString(jsonString:String) ->NSDictionary{

        let jsonData:Data = jsonString.data(using: .utf8)!        let dict =try? JSONSerialization.jsonObject(with: jsonData, options: .mutableContainers)

        ifdict != nil {

            returndictas! NSDictionary

        }

        return NSDictionary()

    }

2、字典转换为JSONString

/**

    字典转换为JSONString

    - parameter dictionary: 字典参数

    - returns: JSONString

    */func getJSONStringFromDictionary(dictionary:NSDictionary) -> String {

        if(!JSONSerialization.isValidJSONObject(dictionary)) {

            print("无法解析出JSONString")

            return""        }

        let data : NSData! =try? JSONSerialization.data(withJSONObject: dictionary, options: [])asNSData!        let JSONString = NSString(data:dataas Data,encoding: String.Encoding.utf8.rawValue)

        returnJSONString!asString

    }

❷ json数组怎么转python字典

Dict转JSON写入文件

复制代码 代码如下:

#!/usr/bin/env python
# coding=utf-8
import json
d = {'first': 'One', 'second':2}
json.mp(d, open('/tmp/result.txt', 'w'))

写入结果
复制代码 代码如下:

cat /tmp/result.txt
{"second": 2, "first": "One"}

读取JSON
复制代码 代码如下:

#!/usr/bin/env python
# coding=utf-8
import json
d = json.load(open('/tmp/result.txt','r'))
print d, type(d)

运行结果
复制代码 代码如下:

{u'second': 2, u'first': u'One'} <type 'dict'>

❸ python3 对象 |字典|json|yaml|字符串 相互转化

在研究 k8s 的yaml 配置文件的时候,我总担心自己一不小心 会写错,所以我向往 使用将对象 序列化 yaml 的形式,

其实 python object 可以 直接 转 yaml ,甚至也可以 直接 转成yaml文件!!!

这里 会经常用到几个 函数 vars() ast.

我们先尝试用最笨的方法 实现 object到yaml 的转化
在python对象 convert to dict 的形式,使用 vars()函数

然后 dict convert to json 使用 json.mps(dict)函数

然后 json converte to yaml 使用 ya= yaml.load(json.mps(dict)) 然后
再 yaml.safe_mp(ya,default_flow_style=False)

至此我们看到 从 python Object ---> dict ----> json ---> yaml 的转化

其中 obj dict json yaml 转 string ,只要 str()函数即可,或者 str(vars())结合

yaml 格式 写入到文件 ,需要注意的是, open()函数 的mode 一定要是 'w' ,不能是’wb', b代表是二进制写入
yaml 写入的是dict str,使用 ‘wb' 会报错,[yaml TypeError: a bytes-like object is required, not 'str']
【出现该错误往往是通过open()函数打开文本文件时,使用了‘rb’属性,如:fileHandle=open(filename,'rb'),则此时是通过二进制方式打开文件的,所以在后面处理时如果使用了str()函数,就会出现该错误,该错误不会再python2中出现。

具体解决方法有以下两种:

第一种,在open()函数中使用‘r’属性,即文本方式读取,而不是‘rb’,以二进制文件方式读取,可以直接解决问题。

第二种,在open()函数中使用‘rb’,可以在使用之前进行转换,有以下实例,来自: http://stackoverflow.com/questions/33054527/python-3-5-typeerror-a-bytes-like-object-is-required-not-str 】

其实 python object 可以 直接 转 yaml ,甚至也可以 直接 转成yaml文件!!!
比如我已经定义了一个 Dog python class,他有 好几个属性 并已经赋值初始化了

另外生成 yaml 对象

生成yaml文件

结果是

反过来 yaml ----> json ---> 持久化 json 文件 indent=1属性是为了让 json 不以单行展示,而是展开
注意的是 python 的 dict 和set 很相似 ,都是 { }, set 里是list, dict 是键值对
【# set object is not JSON serializable [plicate]


打开 demo.json

yaml ---> dict

yaml ---> python object

json --> dict
json.loads()

dict--> json
json.jumps()

str ---> dict
newdict=dict(str)

json -- > python object

一个python object无法直接与json转化,只能先将对象转化成dictionary,再转化成json;对json,也只能先转换成dictionary,再转化成object,通过实践,源码如下:

yaml --> python object
对yaml,也只能先转换成json --->dictionary,再转化成object,通过实践,源码如下:

dict -- ->python object

python对象 默认都有一个 私有的属性 dict 取值 就是 object的 字典形式, 赋值就就可以给对象属性对应赋值

例如json 转 对象

对象 转 json

Python之dict(或对象)与json之间的互相转化
在Python语言中,json数据与dict字典以及对象之间的转化,是必不可少的操作。

dict字典转json数据

对象转json数据

json数据转成dict字典

json数据转成对象

json的load()与mp()方法的使用
mp()方法的使用

❹ ios怎么把json转为字典或者数组

/*!
* @brief 把格式化的JSON格式的字符串转换成字典
* @param jsonString JSON格式的字符串
* @return 返回字典
*/
+ (NSDictionary *)dictionaryWithJsonString:(NSString *)jsonString {
if (jsonString == nil) {
return nil;
}

NSData *jsonData = [jsonString dataUsingEncoding:NSUTF8StringEncoding];
NSError *err;
NSDictionary *dic = [NSJSONSerialization JSONObjectWithData:jsonData
options:
error:&err];
if(err) {
NSLog(@"json解析失败:%@",err);
return nil;
}
return dic;
}

❺ 字典中包含json怎么转换json 在线

通过eval方式进行转换。 举例: var str = '{a:"1"}';//定义了一个string格式 var json = eval('('+str + ')');//通过eval转换成json对象 补充: eval加上圆括号的目的是迫使eval函数在处理JavaScript代码的时候强制将括号内的表达式

阅读全文

与json转换字典相关的资料

热点内容
怎么加入新华网的学习网站 浏览:26
反恐行动升级包 浏览:180
隐藏在电脑桌面的文件怎么显示 浏览:313
一键还原文件被删除如何恢复 浏览:503
安卓dex文件修改 浏览:392
插入的pdf文件怎么更改图标 浏览:228
金华网站怎么制作动态照片 浏览:704
javaparcelable 浏览:499
酷安app下载文件在哪里找 浏览:913
微信可以发给自己文件吗 浏览:449
哪个视频网站被约谈了 浏览:74
在vb连接mysql数据库 浏览:992
一起作业家长通安卓版 浏览:327
nero文件名长度 浏览:714
word数学公式编号模板 浏览:588
jscriptnet 浏览:685
dxerror修复工具 浏览:293
大数据跟踪怎么关 浏览:432
制作的网页文件在哪里 浏览:361
解压缩文件如何输入密码 浏览:746

友情链接