Python拆分线结果根据终端屏幕大小而改变?

2024-05-08 23:41:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我在一个文件中有一些命令,我正在python中读取并使用它执行子流程.Popen. 运行splitlines()方法时,生成的行数取决于终端屏幕的宽度。文件中的命令包括:

CREATE EXTERNAL TABLE tableforview (name string, dob string) STORED AS PARQUET LOCATION 'location';

文件中没有换行符;它都是在一行中键入的。在

hivep = subprocess.Popen("beeline -u 'connectionstring' --force=true --outputformat=csv2 --showWarnings=false -f hivetest", stdout=subprocess.PIPE, stderr=subprocess.PIPE, shell=True)
(output, err) = hivep.communicate()

hivequeryList = []
hivequery = ""

for line in output.splitlines():
    print(line)

但是,当我逐行打印splitlines()方法的输出时,根据终端屏幕的大小,我得到两行或三行。在

我正在把分词读入词典。所以我希望字典的键包含整个create查询,而值包含结果。但是现在的情况是查询被切断了,就像这样

{"CREATE EXTERNAL TABLE tableforview (name string, dob string) STORED AS PARQUE" : "T LOCATION 'location';"}

切断发生的位置取决于终端屏幕的宽度。在

我不知道为什么我的终端屏幕宽度在读取文件时会很重要。我很感激你的意见。在


Tags: 文件方法name命令终端string宽度屏幕
1条回答
网友
1楼 · 发布于 2024-05-08 23:41:01

当你使用print时,你的屏幕宽度就被用来打印你的内容,如果你以后调整它的大小,打印已经完成了它的计算。在

相关问题 更多 >