python部分
读取骨骼数据相关的多个json,拼接到一起
# -- coding: utf-8 --
import os
path = "./test" #文件夹目录
files= os.listdir(path) #得到文件夹下的所有文件名称
s = []
i=0
for file in files: #遍历文件夹
if not os.path.isdir(file): #判断是否是文件夹,不是文件夹才打开
f = open(path+"/"+file); #打开文件
i=i+1
print(i)
iter_f = iter(f); #创建迭代器
str = ""
for line in iter_f: #遍历文件,一行行遍历,读取文本
str = str + line
s.append(str) #每个文件的文本存到list中 print(s[1]) #打印结果
print(s[2]) f=open('./f.txt','w')
f.write(s[1])
#一次读取文件夹内的多个文件,存放在s数组内。然后可以考虑遍历s数组,每10个数存储一次,文件夹要有规则的生成
读取json文件,并解析到其中的数据
创建json文件:
{
"fontFamily": "微软雅黑",
"fontSize": 12,
"BaseSettings":{
"font":1,
"size":2
}
}
读取json文件:
import json def loadFont():
f = open("Settings.json", encoding='utf-8') #设置以utf-8解码模式读取文件,encoding参数必须设置,否则默认以gbk模式读取文件,当文件中包含中文时,会报错
setting = json.load(f)
family = setting['BaseSettings']['size'] #注意多重结构的读取语法
size = setting['fontSize']
return family t = loadFont() print(t)
参考:https://www.cnblogs.com/laoniubile/p/6036919.html
根据上边读取json文件的方法,将骨骼数据中body_parts部分的数据提取出来,其中骨骼数据的json格式为
{
"version":0.1,
"people":[
{
"body_parts":[
614.318,240.562,0.840796,612.341,242.575,0.782728,540.081,244.635,0.774854,569.276,358.043,0.768752,584.981,461.723,0.867115,678.826,242.612,0.800199,661.33,352.252,0.799717,651.585,461.697,0.744037,579.118,369.762,0.561295,565.444,493.059,0.693711,571.355,618.2,0.801457,649.546,367.813,0.612515,665.162,491.085,0.734447,663.339,616.268,0.787793,600.537,224.947,0.928016,626.089,223.034,0.8756,579.144,207.338,0.719421,643.648,201.529,0.673821
],
"body_mistakes":[
],
"complete_fitness_times":0,
"average_fitness_frequency":0.000000,
"current_pose_type":"STAND_UP"
}
],
"width":1280,
"height":720
}
代码为
# -- coding: utf-8 --
import json
path = "./test/Bent-over_000000000000_pose.json" #文件夹目录 def getbody_parts():
f = open(path, encoding='utf-8') #设置以utf-8解码模式读取文件,encoding参数必须设置,否则默认以gbk模式读取文件,当文件中包含中文时,会报错
data = json.load(f)
#family = setting['BaseSettings']['size']
body_parts = data['people'][0]['body_parts']
#注意多重结构的读取语法,在Bent-over_000000000000_pose.json中,大括号表示定义一个对象,
#中括号表示一个数组,数组用下标的方式读取
return body_parts t = getbody_parts() print(t)
根据以上方法,将一个文件夹中多个json文件读取出来,并把每个json文件中的body_parts找到,拼接成list,输出到f.txt文件
# -- coding: utf-8 --
import os
import json
path = "./test" #文件夹目录
files= os.listdir(path) #得到文件夹下的所有文件名称
s = []
for file in files: #遍历文件夹
if not os.path.isdir(file): #判断是否是文件夹,不是文件夹才打开
f = open(path+"/"+file); #打开文件
data = json.load(f)
#family = setting['BaseSettings']['size']
body_parts=''
body_parts = body_parts+str(data['people'][0]['body_parts'])
#注意多重结构的读取语法,在Bent-over_000000000000_pose.json中,大括号表示定义一个对象,
#中括号表示一个数组,数组用下标的方式读取
s.append(body_parts) #每个文件的文本存到list中 print(s[1]) #打印结果
print(s[2]) f=open('./f.txt','w')
f.write(str(s))
#一次读取文件夹内的多个文件,存放在s数组内。然后可以考虑遍历s数组,每10个数存储一次,文件夹要有规则的生成
python部分的更多相关文章
- Python中的多进程与多线程(一)
一.背景 最近在Azkaban的测试工作中,需要在测试环境下模拟线上的调度场景进行稳定性测试.故而重操python旧业,通过python编写脚本来构造类似线上的调度场景.在脚本编写过程中,碰到这样一个 ...
- Python高手之路【六】python基础之字符串格式化
Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...
- Python 小而美的函数
python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况 any any(iterable) ...
- JavaScript之父Brendan Eich,Clojure 创建者Rich Hickey,Python创建者Van Rossum等编程大牛对程序员的职业建议
软件开发是现时很火的职业.据美国劳动局发布的一项统计数据显示,从2014年至2024年,美国就业市场对开发人员的需求量将增长17%,而这个增长率比起所有职业的平均需求量高出了7%.很多人年轻人会选择编 ...
- 可爱的豆子——使用Beans思想让Python代码更易维护
title: 可爱的豆子--使用Beans思想让Python代码更易维护 toc: false comments: true date: 2016-06-19 21:43:33 tags: [Pyth ...
- 使用Python保存屏幕截图(不使用PIL)
起因 在极客学院讲授<使用Python编写远程控制程序>的课程中,涉及到查看被控制电脑屏幕截图的功能. 如果使用PIL,这个需求只需要三行代码: from PIL import Image ...
- Python编码记录
字节流和字符串 当使用Python定义一个字符串时,实际会存储一个字节串: "abc"--[97][98][99] python2.x默认会把所有的字符串当做ASCII码来对待,但 ...
- Apache执行Python脚本
由于经常需要到服务器上执行些命令,有些命令懒得敲,就准备写点脚本直接浏览器调用就好了,比如这样: 因为线上有现成的Apache,就直接放它里面了,当然访问安全要设置,我似乎别的随笔里写了安全问题,这里 ...
- python开发编译器
引言 最近刚刚用python写完了一个解析protobuf文件的简单编译器,深感ply实现词法分析和语法分析的简洁方便.乘着余热未过,头脑清醒,记下一点总结和心得,方便各位pythoner参考使用. ...
- 关于解决python线上问题的几种有效技术
工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争 ...
随机推荐
- caioj1497&&bzoj3125: CITY
震惊!bzoj居然又被苏大佬D飞了... 这题煞笔模板题好吧. 然而bzojAC caiojWA%40??? 好强啊 今天早上发现是m打成n了囧 #include<cstdio> #inc ...
- hdoj--3440--House Man(差分约束)
House Man Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
- 运算符 and or ont
运算符 逻辑运算: and 并且的意思. 左右两端的值必须都是真. 运算结果才是真 or 或者的意思. 左右两端有一个是真的. 结果就是真. 全部是假. 结果才能是假 not 非的意思. 原来是假. ...
- mysql_udf_http(根据mysql表自动触发发送http请求)
下载 tar包wget http://mysql-udf-http.googlecode.com/files/mysql-udf-http-1.0.tar.gz解压tar -vzxf mysql-ud ...
- 动态连通性问题:union-find算法
写在前面的话: 一枚自学Java和算法的工科妹子. 算法学习书目:算法(第四版) Robert Sedgewick 算法视频教程:Coursera Algorithms Part1&2 本文 ...
- JQuery事件绑定,bind与on区别
jquery事件绑定bind:向匹配元素添加一个或多个事件处理器 $(selector).bind("click",data,function); live:向当前或未来的匹配元素 ...
- web产品浏览器兼容性问题你有考虑到吗?
通常,动态网页除了Server端的代码撰写Client端代码也必须下不少工夫.例如:表单提交前的数据验证.图片的轮播.菜单的收合等等. 因此,对于Client端是否能正常执行指令码也必须适当的考察,然 ...
- Codeforces Round #468 (Div. 2 )D. Peculiar apple-tree_BFS
题目简单,不多解释. Code: #include<cstdio> #include<queue> using namespace std; const int maxn = ...
- js-数组和字符串转化
一.数组=>字符串 需要将数组元素用某个字符连接成字符串,示例代码如下: var arr, str;arr = new Array(0,1,2,3,4);str = arr.join(" ...
- BZOJ 4372/3370 烁烁的游戏/震波 (动态点分治+线段树)
烁烁的游戏 题目大意: 给你一棵$n$个节点的树,有$m$次操作,询问某个节点的权值,或者将与某个点$x$距离不超过$d$的所有节点的权值都增加$w$ 动态点分裸题 每个节点开一棵权值线段树 对于修改 ...