Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit ec8aab6

Browse files
committed
Merged revisions 75354 via svnmerge from
svn+ssh://[email protected]/python/trunk ........ r75354 | georg.brandl | 2009-10-11 16:23:49 +0200 (So, 11 Okt 2009) | 1 line Update lpwatch script. ........
1 parent 0e4a639 commit ec8aab6

2 files changed

Lines changed: 41 additions & 49 deletions

File tree

Demo/scripts/lpwatch.py

Lines changed: 38 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -3,105 +3,97 @@
33
# Watch line printer queue(s).
44
# Intended for BSD 4.3 lpq.
55

6-
import posix
6+
import os
77
import sys
88
import time
9-
import string
109

1110
DEF_PRINTER = 'psc'
1211
DEF_DELAY = 10
1312

1413
def main():
1514
delay = DEF_DELAY # XXX Use getopt() later
1615
try:
17-
thisuser = posix.environ['LOGNAME']
16+
thisuser = os.environ['LOGNAME']
1817
except:
19-
thisuser = posix.environ['USER']
18+
thisuser = os.environ['USER']
2019
printers = sys.argv[1:]
2120
if printers:
2221
# Strip '-P' from printer names just in case
2322
# the user specified it...
24-
for i in range(len(printers)):
25-
if printers[i][:2] == '-P':
26-
printers[i] = printers[i][2:]
23+
for i, name in enumerate(printers):
24+
if name[:2] == '-P':
25+
printers[i] = name[2:]
2726
else:
28-
if 'PRINTER' in posix.environ:
29-
printers = [posix.environ['PRINTER']]
27+
if 'PRINTER' in os.environ:
28+
printers = [os.environ['PRINTER']]
3029
else:
3130
printers = [DEF_PRINTER]
32-
#
33-
clearhome = posix.popen('clear', 'r').read()
34-
#
35-
while 1:
31+
32+
clearhome = os.popen('clear', 'r').read()
33+
34+
while True:
3635
text = clearhome
3736
for name in printers:
38-
text = text + makestatus(name, thisuser) + '\n'
37+
text += makestatus(name, thisuser) + '\n'
3938
print(text)
4039
time.sleep(delay)
4140

4241
def makestatus(name, thisuser):
43-
pipe = posix.popen('lpq -P' + name + ' 2>&1', 'r')
42+
pipe = os.popen('lpq -P' + name + ' 2>&1', 'r')
4443
lines = []
4544
users = {}
4645
aheadbytes = 0
4746
aheadjobs = 0
48-
userseen = 0
47+
userseen = False
4948
totalbytes = 0
5049
totaljobs = 0
51-
while 1:
52-
line = pipe.readline()
53-
if not line: break
54-
fields = string.split(line)
50+
for line in pipe:
51+
fields = line.split()
5552
n = len(fields)
5653
if len(fields) >= 6 and fields[n-1] == 'bytes':
57-
rank = fields[0]
58-
user = fields[1]
59-
job = fields[2]
54+
rank, user, job = fields[0:3]
6055
files = fields[3:-2]
61-
bytes = eval(fields[n-2])
56+
bytes = int(fields[n-2])
6257
if user == thisuser:
63-
userseen = 1
58+
userseen = True
6459
elif not userseen:
65-
aheadbytes = aheadbytes + bytes
66-
aheadjobs = aheadjobs + 1
67-
totalbytes = totalbytes + bytes
68-
totaljobs = totaljobs + 1
69-
if user in users:
70-
ujobs, ubytes = users[user]
71-
else:
72-
ujobs, ubytes = 0, 0
73-
ujobs = ujobs + 1
74-
ubytes = ubytes + bytes
60+
aheadbytes += bytes
61+
aheadjobs += 1
62+
totalbytes += bytes
63+
totaljobs += 1
64+
ujobs, ubytes = users.get(user, (0, 0))
65+
ujobs += 1
66+
ubytes += bytes
7567
users[user] = ujobs, ubytes
7668
else:
7769
if fields and fields[0] != 'Rank':
78-
line = string.strip(line)
70+
line = line.strip()
7971
if line == 'no entries':
8072
line = name + ': idle'
8173
elif line[-22:] == ' is ready and printing':
8274
line = name
8375
lines.append(line)
84-
#
76+
8577
if totaljobs:
86-
line = '%d K' % ((totalbytes+1023)//1024)
78+
line = '%d K' % ((totalbytes+1023) // 1024)
8779
if totaljobs != len(users):
88-
line = line + ' (%d jobs)' % totaljobs
80+
line += ' (%d jobs)' % totaljobs
8981
if len(users) == 1:
90-
line = line + ' for %s' % (list(users.keys())[0],)
82+
line += ' for %s' % next(iter(users))
9183
else:
92-
line = line + ' for %d users' % len(users)
84+
line += ' for %d users' % len(users)
9385
if userseen:
9486
if aheadjobs == 0:
95-
line = line + ' (%s first)' % thisuser
87+
line += ' (%s first)' % thisuser
9688
else:
97-
line = line + ' (%d K before %s)' % (
98-
(aheadbytes+1023)//1024, thisuser)
89+
line += ' (%d K before %s)' % (
90+
(aheadbytes+1023) // 1024, thisuser)
9991
lines.append(line)
100-
#
92+
10193
sts = pipe.close()
10294
if sts:
10395
lines.append('lpq exit status %r' % (sts,))
104-
return string.joinfields(lines, ': ')
96+
return ': '.join(lines)
10597

10698
if __name__ == "__main__":
10799
try:

Demo/scripts/queens.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,8 @@ def __init__(self, n=N):
1919

2020
def reset(self):
2121
n = self.n
22-
self.y = [None]*n # Where is the queen in column x
23-
self.row = [0]*n # Is row[y] safe?
22+
self.y = [None] * n # Where is the queen in column x
23+
self.row = [0] * n # Is row[y] safe?
2424
self.up = [0] * (2*n-1) # Is upward diagonal[x-y] safe?
2525
self.down = [0] * (2*n-1) # Is downward diagonal[x+y] safe?
2626
self.nfound = 0 # Instrumentation
@@ -50,7 +50,7 @@ def remove(self, x, y):
5050
self.up[x-y] = 0
5151
self.down[x+y] = 0
5252

53-
silent = 0 # If set, count solutions only
53+
silent = 0 # If true, count solutions only
5454

5555
def display(self):
5656
self.nfound = self.nfound + 1

0 commit comments

Comments
 (0)