HackerRank "Lists" code
You have the right idea.  There are a few details that could be tightened up.

In the main driver:


command is not really what I would consider a command; it's just a useless counter.  By convention, unused variables should be named _.
temp is always a poor variable name.  In this case, command would be a better name than temp.  However, I don't think you need to give it a name at all — just write input().split().  The .strip() is superfluous, since .split() will discard leading and trailing whitespace anyway.  You don't need to convert strings to strings using str().


Naming and parameter-passing for the commdr() function could be improved as well.  Here's how I would write it:

def execute(lst, cmd, *args):
    if cmd == 'insert':
        lst.insert(int(args[0]), int(args[1]))
    elif cmd == 'print':
        print(lst)
    elif cmd == 'remove':
        lst.remove(int(args[0]))
    elif cmd == 'append':
        lst.append(int(args[0]))
    elif cmd == 'sort':
        lst.sort()
    elif cmd == 'reverse':
        lst.reverse()
    elif cmd == 'pop':
        lst.pop()
    else: 
        print("Command not recognized!")

lst = []
for _ in range(int(input())):
    execute(lst, *input().split())


Bonus golfed solution

If you have absolutely no concern for validation or security, you could take advantage of the fact that most of the commands look just like existing methods in Python's list.

class ListInterp(list):
    def print(self):
        print(self)

    def execute(self, cmd, *args):
        getattr(self, cmd)(*map(int, args))

lst = ListInterp()
for _ in range(int(input())):
    lst.execute(*input().split())


I'm not saying that this is good code… I just thought I would mention that there is a quick-and-dirty solution.