Python`s Input and Output

Download Report

Transcript Python`s Input and Output

Kanel Nang

Two methods of formatting output
◦ Standard string slicing and concatenation
operations
◦ str.format() method
ie.
>>> a = “The sum of 1 + 2 is {0}”.format(1+2)
>>> print a
The sum of 1 + 2 is 3

How do you convert value to string in Python?
◦ Functions
 Repr()
 Str()
◦ Differences
 Str() function is meant to return representation of
values that is human-readable
 Repr() generate representations can be read by
interpreter
 If str() does have a proper human representation, then it
will return the same value as repr()












>>> s = ‘hello, world\n’
>>> hello = repr(s)
>>> print hello
‘hello, world\n’
>>> hellos = str(s)
>>> print hellos
hello, world
>>> x = 10 * 3.25
>>> y = 200 * 200
>>> s = ‘The value of x is ‘ + repr(x) + ‘, and y is ‘ +
repr(y) + ‘…’
>>> print s
The value of x is 32.5, and y is 40000…

Useful methods of string objects
◦ rjust()
 Right-justifies a string in a field of a given width by
padding spaces on the left
◦ ljust()
 Left-justifies a string in a field
◦ center()
 Center-justifies a string in a field
◦ zfill()
Pads a numeric string on the left with zeros














>>> for x in range(1, 11):
. . .
print repr(x).rjust(2), repr(x*x).rjust(3),
. . .
# Note trailing comma on previous line
. . .
print repr(x*x*x).rjust(4)
1
1
1
2
4
8
3
9
27
4 16
64
5 25 125
6 36 216
7 49 343
8 64 512
9 81 729
10 100 1000






>>> ‘12’.zfill(5)
‘00012’
>>> ‘-3.14’.zfill(7)
‘-003.14’
>>> ’3.14159265359’.zfill(5)
‘3.1415926359’

Old string formatting
◦ The % operator is another method for string
formatting.
◦ Similar to sprintf() in that it interprets the left
argument to be applied to the right argument, then
return the result of the string.
 ie.
>>> import math
>>> print ‘The value of PI is approximately %5.3f.’ %
math.pi
The value of PI is approximately 3.142

Open()
◦ Returns a file object and is most commonly used
with two arguments
 ie.
 >>> open(filename, mode)

Modes
◦
◦
◦
◦
‘r’ – read only
‘w’ - writing only (overwrite existing files with same name)
‘a’ – opens file for appending (new data added to the end)
‘r+’ - opens the file in both reading and writing
◦ The mode argument is optional, ‘r’ will be assumed if it’s
omitted

Other modes
◦ On Windows
 ‘b’ appended to the mode opens file in binary mode
 ie.
 ‘rb’, ‘wb’, and ‘r+b’
◦ Python on windows will make a distinction between
text and binary files, therefore the end-of-line
characters in text files will be automatically altered
slighted when data is read or written
 Safe for ASCII text files, currupt binary data such as
JPEG or EXE files

Methods
◦ .read(size) - reads some quantity of data and returns it as a
string, if size is omitted, the entire content will be read and
returned
◦ .readline() - reads a single line from a file (\n should be left at the
end of a string and should only be omitted on the last line
◦ .readlines() - returns a list containing all the lines of a data file
(size bytes can be included to avoid overloading memory)
◦ .write() – writes the content of a string to the file
◦ .tell() – returns an integer giving the file object’s current position
in the file measured in bytes
◦ .seek() - change the files object’s position
◦ .close() – closes the file













>>> F.read()
‘This is the entre file.\n’
>>> F.readline()
‘This is the firstline of the file.\n’
>>> F.readline()
‘Second line of the file\n’
>>> F.readlines()
[‘This is the first line of the file.\n’, ‘Second line of the file\n’]
>>>
>>>
>>>
>>>
‘5’
F = open(‘/tmp/workfile’, ‘r+’)
F.write(‘0123456789abcdef’)
F.seek(5)
#Go to the 6th byte in the file
F.read(1)

pickling
◦ A module that can take almost any Python object
and convert it to a string representation.
 ie.
 You have object x and a file object f that’s open for
writing
 Pickle.dump(x, f)

unpickling
◦ Reconstructing the object from the string representation
◦ ie.
◦ f is a file object opened for reading
◦ X = pickle.load(f)
The standard way to make Python objects which can be stored and
reused by other programs

http://docs.python.org/tutorial/inputoutput.
html