【问题标题】:Python Saving long string in text filePython在文本文件中保存长字符串
【发布时间】:2016-06-25 17:48:14
【问题描述】:

我有一个长字符串,我想用代码保存在一个文本文件中:

taxtfile.write(a)

但是因为字符串太长,保存的文件打印为:

"something something ..... something something"   

我如何确保它将保存整个字符串而不截断它?

【问题讨论】:

  • 你试过用“”“”“”把它包装成多行吗? stackoverflow.com/questions/10660435/…
  • 为什么你认为它会被截断?显示其余代码
  • 这似乎只是您的 IDE/终端中的一个表示。写完后确认文件内容了吗?

标签: python string save


【解决方案1】:

我认为这只是您的 IDE 或终端环境中的一种表示形式。尝试以下操作,然后打开文件并亲自查看其是否完整:

x = 'abcd'*10000
with open('test.txt', 'w+') as fh:
    fh.write(x)

请注意,以上内容会将文件写入您当前的工作目录。在调用 Python 之前,您可能需要先导航到 ~/Desktop。

另外,你是如何构建字符串a 的? textfile 是怎么写的?如果对textfile.write(a) 的调用发生在循环中,则循环中可能存在错误。 (显示更多代码会有所帮助)

【讨论】:

    【解决方案2】:

    无论字符串长度如何,它都应该可以工作

    这是我用来展示它的代码:

    import random
    
    a = ''
    number_of_characters = 1000000
    for i in range(number_of_characters):
        a += chr(random.randint(97, 122))
    print(len(a))       # a is now 1000000 characters long string
    
    textfile = open('textfile.txt', 'w')
    textfile.write(a)
    textfile.close()
    

    您可以将 number_of_characters 放入您喜欢的任何数字,但您必须等待字符串随机化

    这是 textfile.txt 的截图:http://prntscr.com/bkyvs9

    可能你的问题出在字符串 a 中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-16
      • 1970-01-01
      • 2019-01-01
      • 2012-07-16
      相关资源
      最近更新 更多