The drug belongs to an emergent subclass of synthetic opioids known as ‘orphines’ which first appeared on the recreational drug market in 2020 ... Last week, researchers dropped a bombshell report on DFNZ, a developing new medicine derived from a class of drugs once considered too dangerous to even study. Their proposal sounded almost too good ...

Understanding the Context

More good news in the battle against opioid addiction. Scientists have reopened research into a class of opioids that were once shelved from study — and have discovered a variant that’s a powerful ... By using a : colon in the list index, you are asking for a slice, which is always another list. In Python you can assign values to both an individual item in a list, and to a slice of the list.

Key Insights

What is the difference between list [1] and list [1:] in Python? I have a piece of code here that is supposed to return the least common element in a list of elements, ordered by commonality: def getSingle(arr): from collections import Counter c = Counte... The first, [:], is creating a slice (normally often used for getting just part of a list), which happens to contain the entire list, and thus is effectively a copy of the list. The second, list(), is using the actual list type constructor to create a new list which has contents equal to the first list. When reading, list is a reference to the original list, and list[:] shallow-copies the list.

Final Thoughts

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.