More python 3 fixups.

This commit is contained in:
John Ralls
2018-03-22 15:08:22 -07:00
parent f05bbe2475
commit bea89a50ac
14 changed files with 121 additions and 121 deletions

View File

@@ -152,13 +152,13 @@ def account_from_path(top_account, account_path, original_path=None):
def main():
if len(argv) < 10:
print 'not enough parameters'
print 'usage: account_analysis.py {book url} {start year} {start month, numeric} {period type: monthly, quarterly, or yearly} {number of periods to show, from start year and month} {whether to show debits: debits-show for true, all other values false} {whether to show credits: credits-show for true, all other values false} {space separated account path, as many nested levels as desired} '
print 'examples:\n'
print "The following example analyzes 12 months of 'Assets:Test Account' from /home/username/test.gnucash, starting in January of 2010, and shows both credits and debits"
print "gnucash-env python account_analysis.py '/home/username/test.gnucash' 2010 1 monthly 12 debits-show credits-show Assets 'Test Account'\n"
print "The following example analyzes 2 quarters of 'Liabilities:First Level:Second Level' from /home/username/test.gnucash, starting March 2011, and shows credits but not debits"
print "gnucash-env python account_analysis.py '/home/username/test.gnucash' 2011 3 quarterly 2 debits-noshow credits-show Liabilities 'First Level' 'Second Level"
print('not enough parameters')
print('usage: account_analysis.py {book url} {start year} {start month, numeric} {period type: monthly, quarterly, or yearly} {number of periods to show, from start year and month} {whether to show debits: debits-show for true, all other values false} {whether to show credits: credits-show for true, all other values false} {space separated account path, as many nested levels as desired} ')
print('examples:\n')
print("The following example analyzes 12 months of 'Assets:Test Account' from /home/username/test.gnucash, starting in January of 2010, and shows both credits and debits")
print("gnucash-env python account_analysis.py '/home/username/test.gnucash' 2010 1 monthly 12 debits-show credits-show Assets 'Test Account'\n")
print("The following example analyzes 2 quarters of 'Liabilities:First Level:Second Level' from /home/username/test.gnucash, starting March 2011, and shows credits but not debits")
print("gnucash-env python account_analysis.py '/home/username/test.gnucash' 2011 3 quarterly 2 debits-noshow credits-show Liabilities 'First Level' 'Second Level")
return
try:

View File

@@ -39,8 +39,8 @@ try:
import jinja2
from gncinvoicefkt import *
except ImportError as import_error:
print "Problem importing modules."
print import_error
print("Problem importing modules.")
print(import_error)
sys.exit(2)
class Usage(Exception):
@@ -68,26 +68,26 @@ def main(argv=None):
for opt in opts:
if opt[0] in ["-f"]:
print "ignoring lock"
print("ignoring lock")
ignore_lock = True
if opt[0] in ["-h","--help"]:
raise Usage("Help:")
if opt[0] in ["-I"]:
invoice_id = opt[1]
print "using invoice ID '" + str(invoice_id) + "'."
print("using invoice ID '" + str(invoice_id) + "'.")
if opt[0] in ["-o"]:
filename_output = opt[1]
print "using output file", filename_output
print("using output file", filename_output)
if opt[0] in ["-t"]:
filename_template = opt[1]
print "using template file", filename_template
print("using template file", filename_template)
if opt[0] in ["-l"]:
list_invoices = True
print "listing invoices"
print("listing invoices")
# Check for correct input
if len(args)>1:
print "opts:",opts,"args:",args
print("opts:",opts,"args:",args)
raise Usage("Only one input possible !")
if len(args)==0:
raise Usage("No input given !")
@@ -103,41 +103,41 @@ def main(argv=None):
if not filename_output:
if filename_template:
filename_output = filename_template + ".out"
print "no output filename given, will be:", filename_output
print("no output filename given, will be:", filename_output)
except Usage, err:
if err.msg == "Help:":
retcode=0
else:
print >>sys.stderr, "Error:",err.msg
print >>sys.stderr, "for help use --help"
print(>>sys.stderr, "Error:",err.msg)
print(>>sys.stderr, "for help use --help")
retcode=2
print
print "Usage:"
print
print "Invoke with",prog_name,"gnucash_url."
print "where input is"
print " filename"
print "or file://filename"
print "or mysql://user:password@host/databasename"
print
print "-f force open = ignore lock"
print "-l list all invoices"
print "-h or --help for this help"
print "-I ID use invoice ID"
print "-t filename use filename as template file"
print "-o filename use filename as output file"
print()
print("Usage:")
print()
print("Invoke with",prog_name,"gnucash_url.")
print("where input is")
print(" filename")
print("or file://filename")
print("or mysql://user:password@host/databasename")
print()
print("-f force open = ignore lock")
print("-l list all invoices")
print("-h or --help for this help")
print("-I ID use invoice ID")
print("-t filename use filename as template file")
print("-o filename use filename as output file")
return retcode
# Try to open the given input
try:
print "Opening", input_url, "."
print("Opening", input_url, ".")
session = gnucash.Session(input_url, ignore_lock=ignore_lock)
except Exception as exception:
print "Problem opening input."
print exception
print("Problem opening input.")
print(exception)
return 2
book = session.book
@@ -149,22 +149,22 @@ def main(argv=None):
if list_invoices:
for number,invoice in enumerate(invoice_list):
print str(number)+")"
print invoice
print(str(number)+")")
print(invoice)
if not (no_output):
if invoice_id:
invoice = book.InvoiceLookupByID(invoice_id)
if not invoice:
print "ID not found."
print("ID not found.")
return 2
if invoice_number:
invoice = invoice_list[invoice_number]
print "Using the following invoice:"
print invoice
print("Using the following invoice:")
print(invoice)
loader = jinja2.FileSystemLoader('.')
env = jinja2.Environment(loader=loader)
@@ -174,7 +174,7 @@ def main(argv=None):
#IPython.embed()
output = template.render(invoice=invoice, locale=locale)
print "Writing output", filename_output, "."
print("Writing output", filename_output, ".")
with open(filename_output, 'w') as f:
f.write(output.encode('utf-8'))

View File

@@ -1,5 +1,5 @@
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
# -*- coding: utf-8 -*-
##@file
# @brief some help for working with invoices, used in \ref py_invoice_export
@@ -22,8 +22,8 @@ try:
GNC_DISC_PRETAX
import str_methods
except ImportError as import_error:
print "Problem importing modules."
print import_error
print("Problem importing modules.")
print(import_error)
sys.exit(2)
def get_all_lots(account):

View File

@@ -1,5 +1,5 @@
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
# -*- coding: utf-8 -*-
##@file
# @brief Exports an invoice to lco-file for use with LaTeX, see \ref py_invoice_export
@@ -66,8 +66,8 @@ try:
GNC_DISC_PRETAX
import locale
except ImportError as import_error:
print "Problem importing modules."
print import_error
print("Problem importing modules.")
print(import_error)
sys.exit(2)
class Usage(Exception):
@@ -157,7 +157,7 @@ def invoice_to_lco(invoice):
line_str += uprice
line_str += u"}"
#print line_str
#print(line_str)
ent_str += line_str
lco_out += write_variable("entries",ent_str)
@@ -184,25 +184,25 @@ def main(argv=None):
for opt in opts:
if opt[0] in ["-f"]:
print "ignoring lock"
print("ignoring lock")
ignore_lock = True
if opt[0] in ["-h","--help"]:
raise Usage("Help:")
if opt[0] in ["-i"]:
print "Using ipshell"
print("Using ipshell")
with_ipshell = True
if opt[0] in ["-l"]:
print "listing all invoices"
print("listing all invoices")
list_invoices=True
if opt[0] in ["-n"]:
invoice_number = int(opt[1])
print "using invoice number", invoice_number
print("using invoice number", invoice_number)
no_latex_output = False
if opt[0] in ["-o"]:
output_file_name = opt[1]
print "using output file", output_file_name
print("using output file", output_file_name)
if len(args)>1:
print "opts:",opts,"args:",args
print("opts:",opts,"args:",args)
raise Usage("Only one input can be accepted !")
if len(args)==0:
raise Usage("No input given !")
@@ -211,26 +211,26 @@ def main(argv=None):
if err.msg == "Help:":
retcode=0
else:
print >>sys.stderr, "Error:",err.msg
print >>sys.stderr, "for help use --help"
print(>>sys.stderr, "Error:",err.msg)
print(>>sys.stderr, "for help use --help")
retcode=2
print "Generate a LaTeX invoice or print out all invoices."
print
print "Usage:"
print
print "Invoke with",prog_name,"input."
print "where input is"
print " filename"
print "or file://filename"
print "or mysql://user:password@host/databasename"
print
print "-f force open = ignore lock"
print "-h or --help for this help"
print "-i for ipython shell"
print "-l list all invoices"
print "-n number use invoice number (no. from previous run with -l)"
print "-o name use name as outputfile. default: data.lco"
print("Generate a LaTeX invoice or print out all invoices.")
print()
print("Usage:")
print()
print("Invoke with",prog_name,"input.")
print("where input is")
print(" filename")
print("or file://filename")
print("or mysql://user:password@host/databasename")
print()
print("-f force open = ignore lock")
print("-h or --help for this help")
print("-i for ipython shell")
print("-l list all invoices")
print("-n number use invoice number (no. from previous run with -l)")
print("-o name use name as outputfile. default: data.lco")
return retcode
@@ -238,8 +238,8 @@ def main(argv=None):
try:
session = gnucash.Session(input_url,ignore_lock=ignore_lock)
except Exception as exception:
print "Problem opening input."
print exception
print("Problem opening input.")
print(exception)
return 2
book = session.book
@@ -251,18 +251,18 @@ def main(argv=None):
if list_invoices:
for number,invoice in enumerate(invoice_list):
print str(number)+")"
print invoice
print(str(number)+")")
print(invoice)
if not (no_latex_output):
if invoice_number == None:
print "Using the first invoice:"
print("Using the first invoice:")
invoice_number=0
invoice=invoice_list[invoice_number]
print "Using the following invoice:"
print invoice
print("Using the following invoice:")
print(invoice)
lco_str=invoice_to_lco(invoice)

View File

@@ -290,11 +290,11 @@ def create_opening_balance_transaction(commodtable, namespace, mnemonic,
def main():
if len(argv) < 3:
print 'not enough parameters'
print 'usage: new_book_with_opening_balances.py {source_book_url} {destination_book_url}'
print 'examples:'
print "gnucash-env python new_book_with_opening_balances.py '/home/username/test.gnucash' 'sqlite3:///home/username/new_test.gnucash'"
print "gnucash-env python new_book_with_opening_balances.py '/home/username/test.gnucash' 'xml:///crypthome/username/finances/new_test.gnucash'"
print('not enough parameters')
print('usage: new_book_with_opening_balances.py {source_book_url} {destination_book_url}')
print('examples:')
print("gnucash-env python new_book_with_opening_balances.py '/home/username/test.gnucash' 'sqlite3:///home/username/new_test.gnucash'")
print("gnucash-env python new_book_with_opening_balances.py '/home/username/test.gnucash' 'xml:///crypthome/username/finances/new_test.gnucash'")
return
#have everything in a try block to unable us to release our hold on stuff to the extent possible

View File

@@ -41,11 +41,11 @@ for pr in pl:
time = pr.get_time()
v=pr.get_value()
price = float(v.num)/v.denom
print time, source, price
print(time, source, price)
if len(pl) > 0:
v0 = pl[0].get_value()
print arm.get_fullname(), float(v0.num) / float(v0.denom )
print(arm.get_fullname(), float(v0.num) / float(v0.denom ))
session.end()
session.destroy()

View File

@@ -57,12 +57,12 @@ for namespace in namespaces:
if len(commodities) == 0 :
print "No commodity in namespace "+namespace_name+"."
print("No commodity in namespace "+namespace_name+".")
else:
if commodity_fullname:
print "Searching commodity '"+commodity_fullname+"' in namespace "+namespace_name
print("Searching commodity '"+commodity_fullname+"' in namespace "+namespace_name)
else:
print "Commoditys in namespace "+namespace_name+":"
print("Commoditys in namespace "+namespace_name+":")
for i, c in enumerate(commodities):
@@ -70,12 +70,12 @@ for namespace in namespaces:
c_fullname = c.get_fullname()
if not(commodity_fullname) or (commodity_fullname == c_fullname):
print "["+str(i)+"] Full Name :", c.get_fullname()
print("["+str(i)+"] Full Name :", c.get_fullname())
if show_prices:
pl = pdb.get_prices(c,cur)
if len(pl) > 0 :
print "{0} {1:20}{2:>10} {3}".format("Time ","Source","Price","Currency")
print("{0} {1:20}{2:>10} {3}".format("Time ","Source","Price","Currency"))
for pr in pl:
source = pr.get_source()
@@ -83,7 +83,7 @@ for namespace in namespaces:
v=pr.get_value()
price = float(v.num)/v.denom
print "{0} {1:20}{2:10.4f} {3}".format(time,source,price,cur_name)
print("{0} {1:20}{2:10.4f} {3}".format(time,source,price,cur_name))
# I didn't find out how to format the time option...
session.end()

View File

@@ -60,14 +60,14 @@ stock = ac.GetCommodity()
# Add the prices
pdb = book.get_price_db()
if len(ac.GetSplitList())<1:
print 'Need at least one Split to get currency info ... '
print('Need at least one Split to get currency info ... ')
raise SystemExit
cur = ac.GetSplitList()[0].GetParent().GetCurrency()
# Get stock data
pl = pdb.get_prices(stock,cur)
if len(pl)<1:
print 'Need at least one database entry to clone ...'
print('Need at least one database entry to clone ...')
raise SystemExit
pl0 = pl[0]
@@ -77,7 +77,7 @@ for i in range(1,len(pl)):
for i in range(0,len(stock_date)):
p_new = pl0.clone(book)
p_new = gnucash.GncPrice(instance=p_new)
print 'Adding',i,stock_date[i],stock_price[i]
print('Adding',i,stock_date[i],stock_price[i])
p_new.set_time(stock_date[i])
v = p_new.get_value()
v.num = int(Fraction.from_float(stock_price[i]).limit_denominator(100000).numerator)

View File

@@ -835,7 +835,7 @@ def getAccountsFlat(book):
for n, account in enumerate(flat_accounts):
if account['type_id'] in type_ids:
filtered_flat_account.append(account)
print account['name'] + ' ' + str(account['type_id'])
print(account['name'] + ' ' + str(account['type_id']))
return filtered_flat_account
@@ -1846,7 +1846,7 @@ def shutdown():
session.save()
session.end()
session.destroy()
print 'Shutdown'
print('Shutdown')
class Error(Exception):
"""Base class for exceptions in this module."""
@@ -1858,12 +1858,12 @@ class Error(Exception):
try:
options, arguments = getopt.getopt(sys.argv[1:], 'nh:', ['host=', 'new='])
except getopt.GetoptError as err:
print str(err) # will print something like "option -a not recognized"
print 'Usage: python-rest.py <connection string>'
print(str(err) # will print something like "option -a not recognized")
print('Usage: python-rest.py <connection string>')
sys.exit(2)
if len(arguments) == 0:
print 'Usage: python-rest.py <connection string>'
print('Usage: python-rest.py <connection string>')
sys.exit(2)
#set default host for Flask

View File

@@ -10,16 +10,16 @@ from gnucash import Session
# We need to tell GnuCash the data format to create the new file as (xml://)
uri = "xml:///tmp/simple_book.gnucash"
print "uri:", uri
print("uri:", uri)
ses = Session(uri, is_new=True)
book = ses.get_book()
#Call some methods that produce output to show that Book works
book.get_root_account().SetDescription("hello, book")
print "Book is saved:", not book.session_not_saved()
print("Book is saved:", not book.session_not_saved())
print "saving..."
print("saving...")
ses.save()
print "Book is saved:", not book.session_not_saved()
print("Book is saved:", not book.session_not_saved())
ses.end()

View File

@@ -62,10 +62,10 @@ from gnucash.gnucash_core_c import \
GNC_OWNER_CUSTOMER, ACCT_TYPE_LIABILITY
if len(argv) < 2:
print 'not enough parameters'
print 'usage: simple_business_create.py {new_book_url}'
print 'example:'
print "gnucash-env python simple_business_create.py sqlite3:///home/blah/blah.gnucash"
print('not enough parameters')
print('usage: simple_business_create.py {new_book_url}')
print('example:')
print("gnucash-env python simple_business_create.py sqlite3:///home/blah/blah.gnucash")
exit()

View File

@@ -42,10 +42,10 @@ from gnucash import Session, Transaction, Split, Account, GncNumeric, \
# and trading accounts disabled
if len(argv) < 2:
print 'not enough parameters'
print 'usage: test_imbalance_transaction.py {book_url}'
print 'examples:'
print "gnucash-env python test_imbalance_transaction.py '/home/username/test.gnucash'"
print('not enough parameters')
print('usage: test_imbalance_transaction.py {book_url}')
print('examples:')
print("gnucash-env python test_imbalance_transaction.py '/home/username/test.gnucash'")
exit()
@@ -86,12 +86,12 @@ try:
s2.SetAccount(account2)
s2.SetValue(GncNumeric(4))
s2.SetAmount(GncNumeric(4))
print 'overall imbalance', a.GetImbalanceValue().to_string()
print('overall imbalance', a.GetImbalanceValue().to_string())
print 'per-currency imbalances'
print('per-currency imbalances')
imbalance_list = a.GetImbalance()
for (commod, value) in imbalance_list:
print value.to_string(), commod.get_mnemonic()
print(value.to_string(), commod.get_mnemonic())
a.CommitEdit()

View File

@@ -125,10 +125,10 @@ class Shell:
def shell(self, cmd,verbose=0,debug=0,header=''):
stat = 0
if verbose or debug: print header+cmd
if verbose or debug: print(header+cmd)
if not debug:
input, output = os.popen4(cmd)
print output.read()
print(output.read())
output.close()
input.close()

View File

@@ -153,7 +153,7 @@ class Shell:
console.write (buf, 'output')
if len(buf) < 256: break
# Command output
print `r`
print(`r`)
except SyntaxError:
exec self.command in self.globals
except:
@@ -166,8 +166,8 @@ class Shell:
tb = sys.exc_traceback
if tb:
tb=tb.tb_next
traceback.print_exception (sys.exc_type, sys.exc_value, tb)
traceback.print(_exception (sys.exc_type, sys.exc_value, tb))
except:
sys.stderr, console.stderr = console.stderr, sys.stderr
traceback.print_exc()
traceback.print(_exc())