Files
python-uncompyle6/test/simple_source/stmts/01_augmented_assign.py
2017-11-22 11:28:05 -05:00

72 lines
1.3 KiB
Python

"""
01_augmented_assign.py modified from
augmentedAssign.py -- source test pattern for augmented assigns
This source is part of the decompyle test suite.
decompyle is a Python byte-code decompiler
See http://www.crazy-compilers.com/decompyle/ for
for further information
"""
raise RuntimeError("This program can't be run")
a = 1
b = 2
a += b; # print a # a = a+b = 3
a -= b; # print a # a = a-b = 1
a *= b; # print a # a = a*b = 2
a -= a; # print a # a = a-a = 0
a += 7*3; # print a # == 21
l= [1,2,3]
l[1] *= 3; # print l[1]; # 6
l[1][2][3] = 7
l[1][2][3] *= 3;
# Python 2.x
# augassign1 ::= expr expr inplace_op ROT_TWO STORE_SLICE+0
l[:] += [9]; # print l
# Python 2.x
# augassign1 ::= expr expr inplace_op ROT_THREE STORE_SLICE+2
l[:2] += [9]; # print l
# Python 2.x
# augassign1 ::= expr expr inplace_op ROT_THREE STORE_SLICE+1
l[1:] += [9]; # print l
# Python 2.x
# augassign1 ::= expr expr inplace_op ROT_FOUR STORE_SLICE+3
l[1:4] += [9]; # print l
l += [42,43]; # print l
a.value = 1
a.value += 1;
a.b.val = 1
a.b.val += 1;
l = []
for i in range(3):
lj = []
for j in range(3):
lk = []
for k in range(3):
lk.append(0)
lj.append(lk)
l.append(lj)
i = j = k = 1
def f():
global i
i += 1
return i
l[i][j][k] = 1
i = 1
l[f()][j][k] += 1
# print i, l