标签: prettytable

如何修复prettytable正确显示汉字

from prettytable import PrettyTable

header="????,??,????".split(",")
x = PrettyTable(header)
x.align["????"]="l"
table='''HuangTianhui,?,1948/05/28
???,?,1952/03/27
???,?,1994/12/09
LuiChing,?,1969/08/02
???,?,1982/03/01
???,?,1983/08/03
YangJiabao,?,1988/08/25
????·???,?,1979/07/10
???,?,1949/10/20
???(??),?,2011/02/25
(??????),?,1985/07/20
'''
data=[row for row in table.split("\n") if row]
for row in data:
    x.add_row(row.strip().split(","))

print(x)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我想要的输出格式如下.

在此输入图像描述

在这个例子中,prettytable.py无法显示字符的正确中国暧昧宽度 ·????·??? ,则字符含糊的宽度.如何修复prettytable.py中的错误?

我在prettytable.py的def _char_block_width(char)中添加了两行,但问题仍然存在.

if char == 0xb7:
    return 2 
Run Code Online (Sandbox Code Playgroud)

我已经解决了,文件prettytable.py应该安装在我的电脑d:\ python33\Lib\site-packages中directly not in as the form of d:\python33\Lib\site-packages\prettytable\prettytable.py

有很多中文字符宽度不明确,我们添加两行如下来修复bug是愚蠢的,如果有50个不明确的字符,在prettytable.py中会添加100行,有没有简单的方法要做到这一点?只修一些线来对待所有模棱两可的角色?

if char == 0xb7:
    return 2 
Run Code Online (Sandbox Code Playgroud)

r python-3.x prettytable

7
推荐指数
1
解决办法
720
查看次数

Python PrettyTable:在表格标题上方添加标题

我有一个生成多个表的脚本,这些表都具有相同的列名和非常相似的数据.到目前为止,我一直在通过在它之前打印标题使每个表独特,即:

print("Results for Method Foo")
#table 1
print("Results for Method Bar")
#table 2 
Run Code Online (Sandbox Code Playgroud)

等等.但那不是很漂亮..

虽然它看起来像一个明显的用例,但我无法找到做这样的事情的选项:

PrettyTable标题

有关如何实现这一目标的任何想法?

万一它很重要:我使用的是python 3.4,带有virtualenv和漂亮版本0.7.2

python prettytable

7
推荐指数
1
解决办法
5649
查看次数

如何在Python中使用Pretty Table打印多个列表中的数据?

我是Python编程的新手,使用Python 3.x,并且正在使用理发店POS系统,管理员将有权添加服务及其相应的价格.我正在使用Pretty Table库来实现打印带有serviceID,服务和价格的表格.

这是我的代码:

from prettytable import PrettyTable
import random

serviceID = []
services = []
price = []
x = PrettyTable()

x.add_column("ServiceID",[serviceID])
x.add_column("Service", [services])
x.add_column("Price", [price])

while True:
try:

     ID = random.randint(1,90000) #range high to lower probability of non-uniqueness
     serviceID.append(ID) #Generates unique ID for each service
     prompt1 = input("Please add a service name to the list\n")
     services.append(prompt1)

     prompt2 = input("Please enter a price for the service\n")
     prompt2 == int(prompt2)
     price.append(prompt2)

     print(x)


except ValueError:
    print("Please enter valid type")
    continue
Run Code Online (Sandbox Code Playgroud)

当我输入第一个服务和Price时,输出为: …

python python-3.x prettytable

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

Python prettytable按多列排序

我正在使用PrettyTable以漂亮的表格格式将数据打印到终端.通过单列打印它非常容易.

from prettytable import PrettyTable

table = PrettyTable(["Name", "Grade"])
table.add_row(["Joe", 90])
table.add_row(["Sally", 100])
print table.get_string(sortby="Grade", reversesort=True)

>> Table with Sally on top, because her score is highest.
Run Code Online (Sandbox Code Playgroud)

我的麻烦是我想对两列进行排序.在这个代理案例中,我想按年级打印,然后按字母顺序打印,如果有平局.

table = PrettyTable(["Name", "Grade"])
table.add_row(["Joe", 90])
table.add_row(["Sally", 100])
table.add_row(["Bill", 90])
print table.get_string(sortby=("Grade","Name"), reversesort=True)

>> Doesn't work
Run Code Online (Sandbox Code Playgroud)

文档说sort_key将允许我编写一个函数来完成这个,但我还没有看到一个实际的实现来解决.

python sorting prettytable

6
推荐指数
1
解决办法
4535
查看次数

在python单表单元格中添加多行

我不确定如何绘制如下表,我尝试使用prettytable但无法在一个单元格中放置多行。

注意:行数应基于字符串的数目,因此我想在每行中放置一些n字符串。

有人可以帮忙吗?

+---- +-------------------+-------------------------------------------------------+
| Id  | Name              | Comment                                               |
+-----+-------------------+-------------------------------------------------------+
| 1   |  Alvina Skiles    | Dolor qui rerum est sed. Sed ipsa repudiandae et      |
|     |                   | Non explicabo voluptas impedit rerum dignissimos.     |
|     |                   | Minima voluptatibus sint voluptates similique.'       |
+-----+-------------------+-------------------------------------------------------+
| 2   |  Chasity Lakin    | Nesciunt ea voluptatem rerum eos rerum ut soluta      |
|     |                   | Animi totam rerum fugiat consectetur odio et          |
|     |                   | repellendus                                           | …
Run Code Online (Sandbox Code Playgroud)

python prettytable

5
推荐指数
2
解决办法
2279
查看次数

错误 [ERR_PACKAGE_PATH_NOT_EXPORTED]:包子路径“./lib/sync”未由 node_modules\csv-parse\package.json 中的“exports”定义

每当我在 nodejs 中运行 index.js 时,我都会收到此错误消息。

Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: Package subpath './lib/sync' is not defined by "exports" in D:\Scuola\5f_Informatca\Tpsit\Telegram\node_modules\csv-parse\package.json  
    at new NodeError (node:internal/errors:371:5)
    at throwExportsNotFound (node:internal/modules/esm/resolve:453:9)
    at packageExportsResolve (node:internal/modules/esm/resolve:729:3)
    at resolveExports (node:internal/modules/cjs/loader:482:36)
    at Function.Module._findPath (node:internal/modules/cjs/loader:522:31)
    at Function.Module._resolveFilename (node:internal/modules/cjs/loader:919:27)
    at Function.Module._load (node:internal/modules/cjs/loader:778:27)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (D:\Scuola\5f_Informatca\Tpsit\Telegram\node_modules\prettytable\prettytable.js:1:13)
    at Module._compile (node:internal/modules/cjs/loader:1103:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1155:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load (node:internal/modules/cjs/loader:822:12)
    at Module.require (node:internal/modules/cjs/loader:1005:19)
    at require (node:internal/modules/cjs/helpers:102:18)
    at Object.<anonymous> (D:\Scuola\5f_Informatca\Tpsit\Telegram\index.js:3:21)
    at Module._compile (node:internal/modules/cjs/loader:1103:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1155:10)
    at Module.load (node:internal/modules/cjs/loader:981:32)
    at Function.Module._load …
Run Code Online (Sandbox Code Playgroud)

json node.js npm prettytable telegram-bot

5
推荐指数
1
解决办法
5790
查看次数

带有颜色输出的 Python 漂亮表格

我正在使用漂亮的表格来生成表格输出。

是否可以根据颜色生成。如果失败,它应该显示为红色,正常它应该显示为绿色。

代码:

from prettytable import PrettyTable
a = "ok"
b = "Failed"
t = PrettyTable(['Input', 'status'])
if a == "ok":
   t.add_row(['FAN', a])
else:
    t.add_row(['FAN', b])
print t  
Run Code Online (Sandbox Code Playgroud)

python python-2.7 prettytable

4
推荐指数
2
解决办法
9530
查看次数

如何从漂亮的表中保存表格?

所以我使用库'prettytable',并且能够在执行时获得我的数据表.但是,我不知道如何将其保存到文件中.理想情况下,我希望将表格保存为pdf,以便将其用于我的报告.

以下是来自漂亮网页本身的示例代码:

from prettytable import PrettyTable

x = PrettyTable(["City name", "Area", "Population", "Annual Rainfall"])
x.align["City name"] = "l" # Left align city names
x.padding_width = 1 # One space between column edges and contents (default)
x.add_row(["Adelaide",1295, 1158259, 600.5])
x.add_row(["Brisbane",5905, 1857594, 1146.4])
x.add_row(["Darwin", 112, 120900, 1714.7])
print x
Run Code Online (Sandbox Code Playgroud)

表

python numpy prettytable

3
推荐指数
1
解决办法
3399
查看次数

如何在使用prettytable时获取单元格的值

使用nicetable时是否可以获得特定单元格的值?

我有以下代码来遍历一个简单表的所有行.

from prettytable import PrettyTable

table = PrettyTable(["Column 1", "Column 2", "Column 3"])
table.add_row(["A", "B", "C"])
table.add_row(["F", "O", "O"])
table.add_row(["B", "A", "R"])

for row in table:
    print(row)
Run Code Online (Sandbox Code Playgroud)

此示例打印以下3个表:

+----------+----------+----------+
| Column 1 | Column 2 | Column 3 |
+----------+----------+----------+
|    A     |    B     |    C     |
+----------+----------+----------+
+----------+----------+----------+
| Column 1 | Column 2 | Column 3 |
+----------+----------+----------+
|    F     |    O     |    O     |
+----------+----------+----------+
+----------+----------+----------+
| Column 1 | Column 2 | Column …
Run Code Online (Sandbox Code Playgroud)

python prettytable

3
推荐指数
1
解决办法
3313
查看次数

如何定义列的宽度(PrettyTable,Python)?

所以,我有一张桌子(PrettyTable),我想让它们尽可能宽。例如,第一列的宽度应为 5px,第二列的宽度应为 18px,依此类推...我该怎么做?

python datatable python-3.x prettytable

3
推荐指数
1
解决办法
2164
查看次数