What is the difference between list [1] and list [1:] in Python?

The second, list(), is using the actual list type constructor to create a new list which has contents equal to the first list. (I didn't use it in the first example because you were overwriting that name in your code - which is a good example of why you don't want to do that!)

When reading, list is a reference to the original list, and list[:] shallow-copies the list. When assigning, list (re)binds the name and list[:] slice-assigns, replacing what was previously in the list. Also, don't use list as a name since it shadows the built-in.

The notation List<?> means "a list of something (but I'm not saying what)". Since the code in test works for any kind of object in the list, this works as a formal method parameter. Using a type parameter (like in your point 3), requires that the type parameter be declared. The Java syntax for that is to put <T> in front of the function. This is exactly analogous to declaring formal parameter ...

It gets all the elements from the list (or characters from a string) but the last element. : represents going through the list -1 implies the last element of the list

Here's a list of all the functions available in each category. When using them, don't forget to add quotation marks around all function components made of alphabetic characters that aren't referring to cells or columns. You can change the language of Google Sheets functions between English and 21 other languages. Narrow by ...