Python, writing an integer to a '.txt' file

69,335

Solution 1

I think it's simpler doing:

number = 1337

with open('filename.txt', 'w') as f:
  f.write('%d' % number)

But it really depends on your use case.

Solution 2

Write

result = 1

f = open('output1.txt','w')  # w : writing mode  /  r : reading mode  /  a  :  appending mode
f.write('{}'.format(result))
f.close()

Read

f = open('output1.txt', 'r')
input1 = f.readline()
f.close()

print(input1)

Solution 3

With python 2, you can also do:

number = 1337

with open('filename.txt', 'w') as f:
  print >>f, number

I personally use this when I don't need formatting.

Share:
69,335
clickonMe
Author by

clickonMe

Updated on April 23, 2021

Comments

  • clickonMe
    clickonMe about 3 years

    Would using the pickle function be the fastest and most robust way to write an integer to a text file?

    Here is the syntax I have so far:

    import pickle
    
    pickle.dump(obj, file)
    

    If there is a more robust alternative, please feel free to tell me.

    My use case is writing an user input:

    n=int(input("Enter a number: "))
    
    • Yes, A human will need to read it and maybe edit it
    • There will be 10 numbers in the file
    • Python may need to read it back later.