Execute HQ9+/Python: Difference between revisions

From Rosetta Code
Content added Content deleted
(create python page)
 
No edit summary
Line 1: Line 1:
{{collection|RCHQ9+}}
{{collection|RCHQ9+}}

This example implements only 'H','Q' and '9' because the author did not explained what '+' do.

<lang python>import sys

def hello():
print "Hello, world!"

def quine():
print src

def bottles():
for i in range(99,2,-1):
print "%d bottles of beer on the wall" % i
print "%d bottles of beer" % i
print "Take one down, pass it around"
print "%d bottles of beer on the wall" % (i-1)
print

print "2 bottles of beer on the wall"
print "2 bottles of beer"
print "Take one down, pass it around"
print "1 bottle of beer on the wall"
print

print "1 bottle of beer on the wall"
print "1 bottle of beer"
print "Take one down, pass it around"
print "No more bottles of beer on the wall"
print

print "No more bottles of beer on the wall"
print "No more bottles of beer on the wall"
print "Go to the store and buy some more"
print "99 bottles of beer on the wall."
print

if len(sys.argv) != 2:
print "Usage: ./hq9p.py script.hq9"
sys.exit(1)
else:
f = sys.argv[1]

try:
s = open(f,"r")
except IOError, e:
print "Can't open file: " + str(e.args[1])
sys.exit(1)

src = s.read()

for i in src.lower():
if i == 'h':
hello()
elif i == 'q':
quine()
elif i == '9':
bottles()
else:
pass # Comment...
</lang>

Revision as of 16:56, 21 July 2009

Execute HQ9+/Python is part of RCHQ9+. You may find other members of RCHQ9+ at Category:RCHQ9+.

This example implements only 'H','Q' and '9' because the author did not explained what '+' do.

<lang python>import sys

def hello():

   print "Hello, world!"

def quine():

   print src

def bottles():

   for i in range(99,2,-1):       
       print "%d bottles of beer on the wall" % i
       print "%d bottles of beer" % i
       print "Take one down, pass it around"
       print "%d bottles of beer on the wall" % (i-1)
       print
   print "2 bottles of beer on the wall"
   print "2 bottles of beer"
   print "Take one down, pass it around"
   print "1 bottle of beer on the wall"
   print
   print "1 bottle of beer on the wall"
   print "1 bottle of beer"
   print "Take one down, pass it around"
   print "No more bottles of beer on the wall"
   print
   print "No more bottles of beer on the wall"
   print "No more bottles of beer on the wall"
   print "Go to the store and buy some more"
   print "99 bottles of beer on the wall."
   print 

if len(sys.argv) != 2:

   print "Usage: ./hq9p.py script.hq9"
   sys.exit(1)

else:

   f = sys.argv[1]

try:

   s = open(f,"r")

except IOError, e:

   print "Can't open file: " + str(e.args[1])
   sys.exit(1)

src = s.read()

for i in src.lower():

   if i == 'h':
       hello()
   elif i == 'q':
       quine()
   elif i == '9':
       bottles()
   else:
       pass # Comment...

</lang>