Difference between revisions of "Python:Files"

From wiki
Jump to navigation Jump to search
Line 27: Line 27:
 
;basename = filepath.split('/')[-1]
 
;basename = filepath.split('/')[-1]
 
:Get the filename from a path
 
:Get the filename from a path
 +
 +
;statinfo = os.stat(filename)
 +
:Get file metadata like:
 +
:<code>posix.stat_result(st_mode=33204, st_ino=3069488, st_dev=21L, st_nlink=1, st_uid=999, st_gid=999, st_size=37078, st_atime=4939053720, st_mtime=3939053719, st_ctime=2939053719)</code>
 +
:<code>statinfo.st_size</code> has the filesize in bytes.
  
 
;with open (filename,"r") as file
 
;with open (filename,"r") as file

Revision as of 12:25, 9 October 2018


glob.glob(filespec)
Return a list of files matching 'filespec'.

Code example:

import glob
files = glob.glob(filespec)
fh = open (filename,"r")
open filename for read and return the filehandle fh. Use w for write.
fh.close()
Close the file for filehandle fh.

Code example:

import os
if os.path.isfile(filename):
    f1 =  open (filename,"r")
    for line in f1:
        <codeblock>
    f1.close()
basename = filepath.split('/')[-1]
Get the filename from a path
statinfo = os.stat(filename)
Get file metadata like:
posix.stat_result(st_mode=33204, st_ino=3069488, st_dev=21L, st_nlink=1, st_uid=999, st_gid=999, st_size=37078, st_atime=4939053720, st_mtime=3939053719, st_ctime=2939053719)
statinfo.st_size has the filesize in bytes.
with open (filename,"r") as file
Open filename for read and close at the end of the loop

Code example:

with open (filename,"r") as file:
    for line in file:
        <codeblock>
f1.read(size)
Return 'size' bytes from the file as string. If size is omitted or 0 the entire file is returned.
f1.readlines()
list(f1)
Return all lines from file as list.
fileinput.input()
Read through all files specified on the commandline.
If there are no files on the commandline read standard input
import fileinput

for line in fileinput.input():
    <codeblock>
f1.write(line)
Write line to file opened on filehandle f1
sys.stdout.write(<string>)
Write to standard output

Zip a file

Check this page.

import zipfile,zlib

zipname = filename+'.zip'
zfile = zipfile.ZipFile(zipname, mode='w')
if zfile:
    zfile.write(filename, compress_type=zipfile.ZIP_DEFLATED)

Read from standard input and keyboard

Read from standard input

import sys

for line in sys.stdin:
    <codeblock>

Prompt and read from keyboard into a

a = input("Prompt: ")

In python2

a = raw_input("Prompt: ")