Display all Prime Factors from user input
For both of your functions prime and factor you have something like:

for i in range(num):
    if not (i == 0 or i == 1):
        if num % i == 0:
            factors.append(i)


when you could shorten by using range(start,stop):

for i in range(2,num):
    if num % i == 0:
        factors.append(i)