python替换java.util.properties。

pyjavaproperties的Python项目详细描述


关于

这是aspn上“python replacement for java.util.properties”配方的一个分支: http://code.activestate.com/recipes/496795/该项目由anand b pillai负责维护 anandpillai@letterboxes.organand@anvetsu.com

许可证

代码是根据麻省理工学院的许可证重新授权的。有关详细信息,请参见LICENSE文件。

这是什么

该模块被设计为与 java.util.Properties <http://java.sun.com/j2se/1.5.0/docs/api/java/util/Properties.html>_ 上课。

目前,支持基本的输入/输出方法。

从根本上说,这个模块的设计是为了让用户能够轻松地解析和操作java属性 文件-就这样。有相当数量的我们蟒蛇在多语种商店工作, 不断地编写自己的解析机制是很痛苦的。更不用说Java人 众所周知,不愿意使用任何跨语言的配置,除非是XML, 这是一种自我惩罚。:)

python支持

该模块是跨python2和python3兼容的。

本模块基本支持python3。这意味着测试应该通过任何版本的 虽然python3只在>;=python3.6.6版本中测试过。

由于python3的更改,这应该适用于任何python2版本>;=python2.7。

注意事项

代码内部仍然使用python2类型的字符串。换句话说,正确的unicode支持仍然是 不见了。

计划

这里是一个在Python 2下运行的当前版本的近似减少优先级的计划 命令。

  1. 保留/维护原始文件中的空行和注释
  2. 添加Unicode支持
  3. 在直接字典get/set之上提供python属性访问
  4. 使模块与最新j2se中的新方法兼容。

用法

from pyjavaproperties import Properties
p = Properties()
p.load(open('test.properties'))
p.list()
print p
print p.items()
print p['name3']
p['name3'] = 'changed = value'
print p['name3']
p['new key'] = 'new value'
p.store(open('test2.properties','w'))

另请参见properties.list()方法,该方法将在属性键上返回迭代器

测试

$ python pyjavaproperties_test.py

更改和新闻

0.7版

  • 0.7版的setup.py。
  • 已创建changelog.txt
  • 更新的readme.md显示测试、更改部分和对作者的更新等。
  • 从PSF重新获得麻省理工学院的许可。
  • 重写N.B的补丁以重新授权麻省理工学院的回购协议。
  • 基本的python3支持加上python2/3交叉兼容性。
  • 在readme.md.中吸收TOdo。
  • 自述=>;readme.md.
  • 添加了对引用属性的支持。
  • 为引用的属性添加测试并保存。
  • 代码上的小改动。
  • 代码移到新的git repo。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
在Java中获取Path2D对象的坐标对?   javascript下载iFramePlayer视频   java intellij idea:定义的环境变量在maven pom中无法识别   批处理以调用Java主类   java SOAP TCP隧道/监视器替代方案   java更改文件中的特定字节   java将值插入HashBasedTable   web爬虫Java web爬虫静态URL   Java中逗号作为十进制分隔符的字符串格式   用eclipse导出可运行jar的java   控制台从java文件执行命令   在变量中使用多个类型的泛型Java通配符   java Sip INVITE错误并发送BYE消息   正则表达式Java:如何删除两个字符串之间匹配子字符串的第一个匹配项?