如何获取导入的文本文件以在同一行上打印其信息?

时间:2015-11-19 01:45:27

标签: python file python-3.x import

def main():
    numbers = open('numbers.txt', 'r')
    lines = numbers.readline()
    while lines != '':
        print (lines, end='')
        lines = numbers.readline()
    numbers.close()

main()

输出

    = RESTART: /Users/jasonbonvie/Desktop/python class /Chapter 6 /program64.py =
13
11
9
9
5
19
9

我希望所有这些数字都在同一条线上,它们之间有空格我想不出来请帮帮忙!

2 个答案:

答案 0 :(得分:0)

file.readline() 在其返回值中包含行终止符,因此end=''不会抑制通常的新行。

您可以使用string.rstrip()来提供帮助:

def main():
    with open('numbers.txt') as numbers:
    for line in numbers:
        print(lines.rstrip(), end='')
    numbers.close()

请注意使用with自动正确处理文件关闭,并在for循环中迭代文件对象以处理文件中的每一行。

此外,您可能需要具体说明从每行末尾剥离的字符:string.rstrip()将删除行尾的所有空格字符。如果您的数据在行尾有空格,并且您想保留该空格,则可以明确指定要删除的字符。

答案 1 :(得分:0)

library(ggplot2)
library(data.table)

dt = data.table(x = c(1, 2), ymin = c(1,0), ymax = c(2, 1.3), size = c(1, 2))

p <- ggplot()
p <- p + geom_linerange(data = dt, aes(x = x, ymin = ymin, ymax = ymax, size = as.factor(size)))
p <- p + scale_size_discrete(range = c(1, 2), guide = guide_legend(title="I   want to rotate the lines (symbols) by 90 degree"))

p