python数据结构转字符串_python2中字符不显示问题_python2_递归
# encoding:utf-8 def get_str(data):
"""将python数据转化为肉眼可见的字符串
:param data: str、dict、list
:return: str
"""
if data is None:
return ""
if isinstance(data, str):
return "%s" % data
elif isinstance(data, dict):
ret = "{"
for key, value in data.items():
# 处理key
if isinstance(key, int) or isinstance(key, float):
ret += "%s: " % str(key)
else:
ret += "'%s': " % key
# 处理值
if isinstance(value, int) or isinstance(value, float):
ret += "%s, " % str(value)
elif isinstance(value, str):
ret += "'%s', " % value
else:
ret += get_str(value)+", "
ret += "} "
elif isinstance(data, list):
ret = "["
for value in data:
if isinstance(value, int) or isinstance(value, float):
ret += "%s, " % str(value)
elif isinstance(value, str):
ret += "'%s', " % value
else:
ret += get_str(value) + ", "
ret += "] "
elif isinstance(data, set) or isinstance(data, tuple):
ret = "("
for value in data:
if isinstance(value, int) or isinstance(value, float):
ret += "%s, " % str(value)
elif isinstance(value, str):
ret += "'%s', " % value
else:
ret += get_str(value) + ", "
ret += ") "
else:
ret = "%s" % str(data)
return ret if __name__ == "__main__":
data = {
"items": {
"datetime": "2021-09-15 10:54:59",
"internet": 1,
"server": "pool.ntp.org",
"timezone": "+8"},
"zone_list": [
"(UTC)协调世界时",
"(UTC)卡萨布兰卡",
"(UTC)蒙罗维亚、雷克雅未克",
"(UTC)都柏林、爱丁堡、里斯本、伦敦",
"(UTC+01:00)布鲁塞尔、哥本哈根、马德里、巴黎"],
"zone_name":"(UTC+08:00)北京、重庆、香港特别行政区、乌鲁木齐",
"message": "ok",
"status": 1000,
"token": "5b2fe1ce5fe0aa6123c09bc8a4d51b40"
}
print data
print get_str(data)
python数据结构转字符串_python2中字符不显示问题_python2_递归的更多相关文章
- python数据结构-如何为元组中的每个元素命名
如何为元组中的每个元素命名 简述 当对象数据格式固定时,用元组比列表更节省内存空间, 我们使用索引访问元组元素,但是这种访问方式会降低程序的可读性. 举个栗子 对于学生的信息,我们有固定的数据格式,我 ...
- python数据结构-如何统计序列中元素的频度
如何统计序列中元素的频度 问题举例 如何找出随机序列[1, 5, 6, 5, 3, 2, 1, 0, 6, 1, 6]中出现频度最高的3个元素? 如何统计某篇英文文章中词频最高的5个单词? 将序列转换 ...
- python数据结构-如何根据字典中值的大小对字典项排序
如何根据字典中值的大小对字典项排序 问题举例 某班英语成绩以字典形式存储,如何根据成绩高低,计算学生成绩排名 { “tom”:80, "lily":88, "marton ...
- c程序设计语言_习题1-19_编写函数reverse(s)将字符串s中字符顺序颠倒过来。
Write a function reverse(s) that reverses the character string s . Use it to write a program that re ...
- python 判断列表字符串元素首尾字符是否相同
def match_words(words): ctr = for word in words: and word[] == word[-]: ctr += return ctr print(matc ...
- python 正则匹配字符串里面的字符
import re x=re.findall(r'\bf[a-z]*', 'which foot or hand fell fastest') print(x)
- python 解决抓取网页中的中文显示乱码问题
关于爬虫乱码有很多各式各样的问题,这里不仅是中文乱码,编码转换.还包括一些如日文.韩文 .俄文.藏文之类的乱码处理,因为解决方式是一致的,故在此统一说明. 网络爬虫出现乱码的原因 源网页编码和爬取下来 ...
- Python:删除字符串中的字符
一.删除字符串两端的一种或多种字符 #strip().lstrip().rstrip()方法:(默认删除空格符) A.list.strip(字符):删除字符串两端的一种或多种字符: #例:删除字符串s ...
- Python之数据结构:字符串中的方法
一.过滤字符串 1.strip() (1)去掉行收尾不可见字符 a = ' wejifrow ' print a print a.strip() 结果: wejifrow wejifrow (2)st ...
- python中repr和eval可以用来在数据结构和字符串间互转
在这个功能上,repr和str的作用一样,把一个数据结构转换成字符串,例如: >>> str([1,2,3,4])'[1, 2, 3, 4]' >>> repr([ ...
随机推荐
- 简单的js hook
// ==UserScript== // @name ethereum request // @namespace http://tampermonkey.net/ // @version 0.1 / ...
- Python中的容器、迭代器、生成器
容器是一系列元素的集合,str.list.set.dict.file.sockets对象都可以看作是容器,容器都可以被迭代(用在for,while等语句中),因此他们被称为可迭代对象. 可迭代对象实现 ...
- Java流程控制练习
练习 打印三角形及Debug的使用 public class TestDemo { public static void main(String[] args) { //打印三角形 5行 for(in ...
- TypeScript 元组
TypeScript 元组 我们知道数组中元素的数据类型都一般是相同的(any[] 类型的数组可以不同),如果存储的元素数据类型不同,则需要使用元组. 元组中允许存储不同类型的元素,元组可以作为参数传 ...
- openwrt从gitee pull代码并编译go项目
安装ssh opkg update # openssh-keygen 可以用来生产密钥 opkg install openssh-keygen # 连接其他服务器 opkg install opens ...
- 解决通配符的匹配很全面, 但无法找到元素 'aop:config' 的声明
这是因为在applicationContext.xml文件中没有添加对应的地址 http://www.springframework.org/schema/aop http://www.springf ...
- Nebula Exchange与集群guava版本不一致问题
1.集群版本 Hadoop 3.1.1.3.1.4.0-315 Hive (version 3.1.0.3.1.4.0-315) Spark 2.3.2.3.1.4.0-315 Scala versi ...
- 【2020NOI.AC省选模拟#7】C. 逃课
题目链接 原题解: 我们需要找出两个距离不超过$k-1$的位置,使他们的和尽量大. 被修改过得位置比较少,所以我们可以先求出连个位置都没有被修改过的答案,然后只关心那些涉及到至少一个被修改过的位置的方 ...
- java jdk8安装之后java -version失败
将此目录下的(C:\Program Files (x86)\Common Files\Oracle\Java\javapath_target_86850671)三个.exe文件删除即可!
- idea常用快捷键记录
实用编写代码辅助快捷键 Ctrl+Alt+V 提出选中内容为局部变量 Ctrl+Backspace 按单词删除 Ctrl+D 复制行 Ctrl+Y 删除当前行 Ctr+Shift+U 大小写转化 Sh ...