标签: pretty-print

如何在Ubuntu上看到漂亮的大型JSON文件?

我想听听你关于如何在Ubuntu上处理大型(40MB)JSON文件的建议.我想在vimgedit或任何其他编辑器中看到它很漂亮.人们可以找到关于如何美化JSON的数学教程,但是,他们不必处理大量输入.我还想象我可以通过pygments或任何其他语法高亮显示管道传输数据.我很想听听你的想法.

示例下载:

wget -O large-dataset.json http://data.wien.gv.at/daten/wfs?service=WFS&request=GetFeature&version=1.1.0&typeName=ogdwien:BAUMOGD&srsName=EPSG:4326&outputFormat=json
Run Code Online (Sandbox Code Playgroud)

请注意下载大小!


编辑:我发现meld工作有点.应用程序不会立即加载整个文件,这会阻止用户界面.相反,它顺序读取文件内容.

ubuntu json syntax-highlighting pretty-print

31
推荐指数
4
解决办法
3万
查看次数

在Python 3中打印空格分隔的元素列表

我有一个L元素列表,比如自然数.我想用一个空格作为分隔符将它们打印在一行中.但我不希望在列表的最后一个元素之后(或在第一个元素之前)有空格.

在Python 2中,可以使用以下代码轻松完成此操作.print声明的实现(神秘地,我必须承认)避免在换行符之前打印额外的空格.

L = [1, 2, 3, 4, 5]
for x in L:
    print x,
print
Run Code Online (Sandbox Code Playgroud)

但是,在Python 3中,似乎使用该print函数的(假设的)等效代码在最后一个数字之后产生一个空格:

L = [1, 2, 3, 4, 5]
for x in L:
    print(x, end=" ")
print()
Run Code Online (Sandbox Code Playgroud)

当然,我的问题很简单.我知道我可以使用字符串连接:

L = [1, 2, 3, 4, 5]
print(" ".join(str(x) for x in L))
Run Code Online (Sandbox Code Playgroud)

这是一个非常好的解决方案,但与Python 2代码相比,我发现它反直觉并且肯定更慢.另外,我知道我可以选择是否打印空间,例如:

L = [1, 2, 3, 4, 5]
for i, x in enumerate(L):
    print(" " if i>0 else "", x, sep="", …
Run Code Online (Sandbox Code Playgroud)

python pretty-print python-3.x

30
推荐指数
2
解决办法
8万
查看次数

如何让Python的ElementTree打印到XML文件?

背景

我正在使用SQLite访问数据库并检索所需的信息.我在Python 2.6版中使用ElementTree来创建包含该信息的XML文件.

import sqlite3
import xml.etree.ElementTree as ET

# NOTE: Omitted code where I acccess the database,
# pull data, and add elements to the tree

tree = ET.ElementTree(root)

# Pretty printing to Python shell for testing purposes
from xml.dom import minidom
print minidom.parseString(ET.tostring(root)).toprettyxml(indent = "   ")

#######  Here lies my problem  #######
tree.write("New_Database.xml")
Run Code Online (Sandbox Code Playgroud)

尝试

我已经尝试使用tree.write("New_Database.xml", "utf-8")上面代码的最后一行,但它根本没有编辑XML的布局 - 它仍然是混乱的混乱.

我还决定摆弄并尝试做:而不是将其打印到Python shell,这给出了错误AttributeError:'unicode'对象没有属性'write'.
tree = minidom.parseString(ET.tostring(root)).toprettyxml(indent = " ")

问题

当我将我的树写到最后一行的XML文件时,是否有一种方法可以像在Python shell中那样打印到XML文件?

我可以toprettyxml()在这里使用,还是有不同的方法来做到这一点?

python xml pretty-print elementtree python-2.6

30
推荐指数
6
解决办法
5万
查看次数

漂亮打印一棵树

假设我有一个如下定义的二叉树数据结构

type 'a tree =
    | Node of 'a tree * 'a * 'a tree
    | Nil
Run Code Online (Sandbox Code Playgroud)

我有一个树的实例如下:

let x =
  Node
    (Node (Node (Nil,35,Node (Nil,40,Nil)),48,Node (Nil,52,Node (Nil,53,Nil))),
     80,Node (Node (Nil,82,Node (Nil,83,Nil)),92,Node (Nil,98,Nil)))
Run Code Online (Sandbox Code Playgroud)

我正在尝试将树打印成易于理解的东西.最好,我想在控制台窗口中打印树,如下所示:

        _______ 80 _______
       /                  \
    _ 48 _              _ 92 _
   /      \            /      \
 35       52         82       98
   \       \        /
    40      53    83
Run Code Online (Sandbox Code Playgroud)

有什么方法可以让我的树以这种格式输出?

f# pretty-print

29
推荐指数
1
解决办法
6723
查看次数

Java:将DOM写入XML文件(格式化问题)

我正在使用org.w3c XML API打开现有XML文件.我正在删除一些节点,而我正在添加其他节点.

问题是添加的新节点是一个接一个地写入的,没有换行符,也没有缩进.虽然XML文件确实有效,但人们很难检查它.

无论如何都要添加缩进,或者至少在每个节点后添加换行符?

java xml formatting pretty-print

27
推荐指数
2
解决办法
3万
查看次数

如何在Python中打印"漂亮"字符串输出

我有一个dicts列表,其中包含来自sql查询的字段classid,dept,coursenum,area和title.我想以人类可读的格式输出值.我在每个顶部想到一个Column标题,然后在每个列中考虑approrpiate输出,即:

CLASSID     DEPT     COURSE NUMBER        AREA     TITLE
foo         bar      foo                  bar      foo
yoo         hat      yoo                  bar      hat
Run Code Online (Sandbox Code Playgroud)

(显然标准对齐/间距)

我如何在python中实现这一目标?

python string terminal pretty-print

27
推荐指数
3
解决办法
5万
查看次数

当我向已解析的树添加标签时,lxml中的漂亮打印失败

我有一个xml文件,我正在使用lxml中的etree来处理,但是当我向它添加标签时,漂亮的打印似乎不起作用.

>>> from lxml import etree
>>> root = etree.parse('file.xml').getroot()
>>> print etree.tostring(root, pretty_print = True)

<root>
  <x>
    <y>test1</y>
  </x>
</root>
Run Code Online (Sandbox Code Playgroud)

到现在为止还挺好.但现在

>>> x = root.find('x')
>>> z = etree.SubElement(x, 'z')
>>> etree.SubElement(z, 'z1').attrib['value'] = 'val1'
>>> print etree.tostring(root, pretty_print = True)

<root>
  <x>
    <y>test1</y>
  <z><z1 value="val1"/></z></x>
</root>
Run Code Online (Sandbox Code Playgroud)

它不再漂亮了.我还试图"向后"创建z1标签,然后创建z标签并将z1附加到它,然后将z标签附加到x标签.但我得到了相同的结果.

如果我不解析文件并只是一次创建所有标签,它将正确打印.所以我认为它与解析文件有关.

如何让漂亮的印刷工作?

python xml parsing lxml pretty-print

26
推荐指数
1
解决办法
8955
查看次数

如何在html/css/js/php中格式化代码

我正在寻找一种方法来自动格式化和编写我在HTML文档中编写的代码.我知道维基百科会这样做,例如在页面上:http://en.wikipedia.org/wiki/Nested_function

我确信有些图书馆可以做到这一点,但我不能为我的生活找到一个.有没有人有什么建议?

html pretty-print

24
推荐指数
3
解决办法
3万
查看次数

Prettyprint到文件?

我正在使用这个要点的树,现在我正在试图弄清楚如何对文件进行漂亮打印.有小费吗?

python tree hash dictionary pretty-print

24
推荐指数
2
解决办法
2万
查看次数

java 8中的漂亮打印XML

我有一个XML文件存储为DOM文档,我想将它打印到控制台,最好不使用外部库.我知道这个问题已在本网站上被多次询问,但以前的答案都没有对我有用.我正在使用java 8,所以也许这是我的代码与以前的问题不同的地方?我还尝试使用从网络上找到的代码手动设置变换器,但这只是导致not found错误.

这是我的代码,它当前只是在控制台左侧的新行上输出每个xml元素.

import java.io.*;
import javax.xml.parsers.*;
import javax.xml.transform.*;
import javax.xml.transform.dom.DOMSource;
import javax.xml.transform.stream.StreamResult;

import org.w3c.dom.Document;
import org.xml.sax.InputSource;
import org.xml.sax.SAXException;


public class Test {
    public Test(){
        try {
            //java.lang.System.setProperty("javax.xml.transform.TransformerFactory", "org.apache.xalan.xsltc.trax.TransformerFactoryImpl");

            DocumentBuilderFactory dbFactory;
            DocumentBuilder dBuilder;
            Document original = null;
            try {
                dbFactory = DocumentBuilderFactory.newInstance();
                dBuilder = dbFactory.newDocumentBuilder();
                original = dBuilder.parse(new InputSource(new InputStreamReader(new FileInputStream("xml Store - Copy.xml"))));
            } catch (SAXException | IOException | ParserConfigurationException e) {
                e.printStackTrace();
            }
            StringWriter stringWriter = new StringWriter();
            StreamResult xmlOutput = new StreamResult(stringWriter); …
Run Code Online (Sandbox Code Playgroud)

java xml dom pretty-print transformer-model

24
推荐指数
3
解决办法
3万
查看次数