Calculate Work Week Hours by Shift (stored as dict)
I would improve the way you calculate total hours - you don't actually need to keep track of how much hours per day of a week you can work and do the calculations in one go on the "schedule" object with the sum() built-in function:

def _calc_workhours(sched=_DEFAULT_SCHEDULE):
    """Returns total work hours from a schedule."""
    return sum(_calc_shift_hours(shift) 
               for shifts in sched.values() if shifts 
               for shift in shifts)


Note that, to define the "scope" of a function more clearly and set the clear boundaries, it returns work hours instead of printing it and executing an os.system() call (which I consider a side effect). Then, to print the result, edit the main block of the program and replace:

_calc_workhours(schedule)


with:

total_hours = _calc_workhours(schedule)
os.system('cls||clear')
print("Total Weekly Hours: %s" % total_hours)




Other ideas:


use argparse module instead of reading from sys.argv directly - it will be cleaner overall, you would have a simple and clear way to define a "--help" mode for your command-line program. Would be easier to set the default value for the schedule
instead of parsing the schedule with literal_eval() from the command-line consider accepting a JSON file with your schedule object which you would load with json.load() 
in any case, reading and parsing the schedule should also be extracted into a separate function 
we can also refactor _calc_shift_hours() a bit and instead of accepting the shift list, accept two arguments, shift_start and shift_end, a bit more explicit and cleaner:

def _calc_shift_hours(shift_start, shift_end):
    """Returns a number of hours per shift."""
    tdelta = datetime.strptime(shift_end, _TIME_FORMAT) - datetime.strptime(shift_start, _TIME_FORMAT)
    # ...

def _calc_workhours(sched=_DEFAULT_SCHEDULE):
    """Returns total work hours from a schedule."""
    return sum(_calc_shift_hours(shift_start, shift_end)
               for shifts in sched.values() if shifts
               for shift_start, shift_end in shifts)

print() function vs print statement, .values() vs itervalues() for Python 3 compatibility
missing docstrings (I've added them in the snippets above - they still can/should be more detailed)
the way you set the default schedule at the moment can be improved so that, if a default schedule is used, you know about it, something like:

try:
    dictarg = literal_eval(sys.argv[1])
    if isinstance(dictarg, dict):
        schedule = dictarg
    else:
        print("Invalid schedule object provided. Using the default schedule.")
        schedule = _DEFAULT_SCHEDULE
except IndexError:
    print("No schedule provided. Using the default schedule.")
    schedule = _DEFAULT_SCHEDULE

if literal_eval() cannot evaluate a string - there will be ValueError thrown - currently it is not handled properly. This again, can be beautifully solved by argparse, or/and if you switch to having schedule in JSON