File: test_augmentedAssign.py

package info (click to toggle)
decompyle 2.3.2-2
  • links: PTS
  • area: main
  • in suites: sarge
  • size: 2,320 kB
  • ctags: 66,234
  • sloc: python: 70,351; ansic: 2,312; makefile: 49; sh: 14
file content (55 lines) | stat: -rw-r--r-- 972 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
"""
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.goebel-consult.de/decompyle/ for download and
for further information
"""

raise "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;
l[:] += [9];  print l
l[:2] += [9];  print l
l[1:] += [9];  print l
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