These problems will help you prepare for hw4 and quiz4. They are
optional and you are encouraged to collaborate when working on them.
-
def ct(a, b):
a += [3]
a = a + [4]
for c in a:
for i in range(len(b)):
if (b[i] not in a):
print("A", end="")
b[i] += c
elif (c % 2 == 1):
print("B", end="")
b += [c]
elif (b[-1] != c):
print("C", end="")
b = b + [c]
return (a,b)
a = [4]
b = [2,3]
print(ct(a,b))
print(a,b)
def ct(L):
result = [ ]
M = [L[i]*10**i for i in range(len(L))]
for val in M:
result.extend([val, L.pop()])
return result
L = [2,5,3]
M = ct(L)
print(L, M)
def ct(L):
result = [ ]
M = L[:] # same as M = copy.copy(L)
if (M == L): result.append(1)
if (M is L): result.append(2)
if (M[0] == L[0]): result.append(3)
if (M[0] is L[0]): result.append(4)
return result
print(ct([5,7,6]))
def ct(L):
M = L
L += [4]
M = M + [5]
print(L, M)
ct(list(range(1)))
import copy
a = [1,2,3,4]
(b,c) = (a, copy.copy(a))
print((a == b), (a == c))
print((a is b), (a is c))
print((a[0] is b[0]), (a[0] is c[0]))
a = [1,2]
(b,c) = (a, copy.copy(a))
b[0] += 10
c[1] += 100
for L in [a,b,c]: print(L)
a = [1,2]
(b,c) = (a, copy.copy(a))
a[0] += 1
b[0] += 2
c[1] += 3
a[0] = c[0]
b[0] = a[1]
for L in [a,b,c]: print(L)
print()
a = list(range(2,10,7))
(b, c) = (a, a[:2])
b[0] += 3
a += [3]
a = a + [4]
print(c + [b[0]])
print(c.append(b[1]))
print(a, b, c)
import copy
def f(a, b):
a = copy.copy(a)
a[0] = b[1]
b[0] = a[1]
return a + b
a1 = a2 = list(range(5,7))
b1 = b2 = list(range(2))
a1 = f(a1, b1)
print(a1, a2, b1, b2)
def onesDigit(n):
return n%10
def ct(L):
for i in range(len(L)):
L[i] += sum(L) + max(L)
return sorted(L, key=onesDigit)
a = [2,1,0]
print(ct(a))
print(a)
def ct(a):
a[1] = "foo"
a[0], a[2] = a[2], a[0]
print(a)
b = a
b.extend([42, "wow" ])
b.pop()
print(b)
c = [] + b
c[1:-1] = ["Hello" , "World" ]
return c
lst = [15, "1" , "twelve" ]
print(ct(lst))
print(lst)