## check prop lambda

0 likes • Nov 19, 2022
Python

## More Python Posts

### clamp number

CodeCatch
0 likes • Nov 19, 2022
Python
`def clamp_number(num, a, b):  return max(min(num, max(a, b)), min(a, b))  clamp_number(2, 3, 5) # 3clamp_number(1, -1, -5) # -1`
```from collections import defaultdict
def combine_values(*dicts):  res = defaultdict(list)  for d in dicts:    for key in d:      res[key].append(d[key])  return dict(res)  d1 = {'a': 1, 'b': 'foo', 'c': 400}d2 = {'a': 3, 'b': 200, 'd': 400}
combine_values(d1, d2) # {'a': [1, 3], 'b': ['foo', 200], 'c': [400], 'd': [400]}```
```from itertools import productV='∀'E='∃'

def tt(f,n) :  xss=product((0,1),repeat=n)  print('function:',f.__name__)  for xs in xss : print(*xs,':',int(f(*xs)))  print('')
# p \/ (q /\ r) = (p \/ q) /\ (p \/ r)
def prob1(p,q,r) :  x=p or (q and r)  y= (p or q) and (p or r)  return x==y
tt(prob1,3)
# p/\(q\/r)=(p/\q)\/(p/\r)
def prob2(p,q,r) :  x=p and ( q or r )  y=(p and q) or (p and r)  return x==y
tt(prob2,3)
#~(p/\q)=(~p\/~q)
def prob3(p,q) :  x=not (p and q)  y=(not p) or (not q)  return x==ytt(prob3,2)
#(~(p\/q))=((~p)/\~q)
def prob4(p, q):   x = not(p or q)   y = not p and not q   return x == y
tt(prob4, 2)
#(p/\(p=>q)=>q)
def prob5(p,q):  x= p and ( not p or q)  return not x or q    tt(prob5,2)
# (p=>q)=((p\/q)=q)
def prob6(p,q) :  x = (not p or q)  y=((p or q) == q)  return x==y tt(prob6,2)

#((p=>q)=(p\/q))=qdef prob7(p,q):  if ((not p or q)==(p or q))==q:    return 1 tt(prob7,2)

#(p=>q)=((p/\q)=p)def prob8(p,q):  if (not p or q)==((p and q)==p):    return 1 tt(prob8,2)

#((p=>q)=(p/\q))=p
def prob9(p,q):  if ((not p or q)==(p and q))==p:    return '1'
tt(prob9,2)

#(p=>q)/\(q=>r)=>(p=>r)def prob10(p,q,r) :  x = not ((not p or q) and (not q or r)) or (not p or r)  return x tt(prob10, 3)

# (p = q) /\ (q => r)  => (p => r)#answer 1def prob11(p,q,r) :  x = not((p is q) and (not q or r)) or (not p or r)  return x tt(prob11, 3)
#(p=q)/\(q=>r)=>(p=>r)#answer 2def prob11(p,q,r):  x=(p==q) and (not q or r)  y=not p or r  return not x or y
tt(prob11,3)
#((p=>q)/\(q=r))=>(p=>r)
def prob12(p,q,r):  x=(not p or q) and ( q==r )  y=not p or r  return not x or y
tt(prob12,3)
#(p=>q)=>((p/\r)=>(q/\r))
def prob13(p,q,r):  x=not p or q  y=(not(p and r) or ( q and r))  return not x or y
tt(prob13,3)
#Question#2----------------------------------------
#(p=>q)=>r=p=>(q=>r)
def prob14(p,q,r):  x=(not(not p or q) or r)  y=(not p or (not q or r))  return x==y
tt(prob14,3)

def prob15(p, q):    x = not(p and q)    y = not p and not q    return x == y
tt(prob15, 2)

def prob16(p, q):    x = not(p or q)    y = not p or not q    return x == y
tt(prob16, 2)

def prob17(p):    x = p    y = not p    return x == y
tt(prob17, 1)```

### sum of powers

CodeCatch
0 likes • Nov 19, 2022
Python
```def sum_of_powers(end, power = 2, start = 1):  return sum([(i) ** power for i in range(start, end + 1)])
sum_of_powers(10) # 385sum_of_powers(10, 3) # 3025sum_of_powers(10, 3, 5) # 2925```
`#Loop back to this point once code finishesloop = 1while (loop < 10):#All the questions that the program asks the user    noun = input("Choose a noun: ")    p_noun = input("Choose a plural noun: ")    noun2 = input("Choose a noun: ")    place = input("Name a place: ")    adjective = input("Choose an adjective (Describing word): ")    noun3 = input("Choose a noun: ")#Displays the story based on the users input    print ("------------------------------------------")    print ("Be kind to your",noun,"- footed", p_noun)    print ("For a duck may be somebody's", noun2,",")    print ("Be kind to your",p_noun,"in",place)    print ("Where the weather is always",adjective,".")    print ()    print ("You may think that is this the",noun3,",")    print ("Well it is.")    print ("------------------------------------------")#Loop back to "loop = 1"    loop = loop + 1`
`import copybegining = [False,False,False,False,False,None,True,True,True,True,True]#False = black True = whiteits = [0]def swap(layout, step):    layoutCopy = copy.deepcopy(layout)    layoutCopy[(step[0]+step[1])], layoutCopy[step[1]] = layoutCopy[step[1]], layoutCopy[(step[0]+step[1])]    return layoutCopydef isSolved(layout):    for i in range(len(layout)):        if(layout[i] == False):            return (i >= (len(layout)/2))def recurse(layout, its, steps = []):    if isSolved(layout):        its[0] += 1        print(layout,list(x[0] for x in steps))        return    step = None    for i in range(len(layout)):        if(layout[i] == None):            if(i >= 1): #If the empty space could have something to the left                if(layout[i - 1] == False):                    step = [-1,i]                    recurse(swap(layout,step), its, (steps+[step]))                if(i > 1): #If the empty space could have something 2 to the left                    if(layout[i - 2] == False):                        step = [-2,i]                        recurse(swap(layout,step), its, (steps+[step]))            if(i < (len(layout)-1)): #If the empty space could have something to the right                if(layout[i + 1] == True):                    step = [1,i]                    recurse(swap(layout,step), its, (steps+[step]))                if(i < (len(layout)-2)): #If the empty space could have something to the right                    if(layout[i + 2] == True):                        step = [2,i]                        recurse(swap(layout,step), its, (steps+[step]))    its[0] += 1    #return Nonerecurse(begining,its,[])print(its[0])`