So in Python you can do the following:
def append(_list):
_list.append(1)
_list = [0]
append(_list)
print(_list)
This obviously allows me to append 1 to the list, however if I change the reference of list within the append function it doesn't change (which is as expected due to Pass-by-Object-reference). Java works similar however it's considered Pass-by-Reference. Does this simply mean that Python is like C++ when it passes a pointer that points to an object by value and then dereferences (sort of like when using C/C++'s -> operator)?