# 3-1-2-25. List Methods

Previously, when we created a variable,

that held an immutable object,

the value of that immutable object was saved in memory.

Here, we create a name with value Jim,

and assign it to another variable, called Student.

It is the value Jim,

that is assigned to student.

So, when we reassign name,

to update it to Tim,

this change is not reflected in the value of student.

Lists are different from strings,

as they are mutable.

Here, we create a list of scores,

and assign the same list to the variable grades: B,

C, A, D, B,

A, six of them.

When we change, or mutate the score’s list,

this affects both scores and grades.

Both scores and grades are variable names for the same underlying list,

and either name can be used to access and change that lists.

The behavior of variables containing mutable and immutable objects,

are very different and might even seem surprising at times.

Experiment used to print functions and double check your work where you can,

to make sure that your programs correctly keep track of their data.

While you experiment with lists,

there are some useful functions you should get familiar with.

Len, retains how many elements are in a list.

Max, retains the greatest element of a list.

How the greatest element is determined,

depends on what type of objects are in your list.

The maximum element in a list of numbers,

is the largest number.

The maximum element in a list of strings,

is the element that would occur last,

if the list was sorted alphabetically.

That’s reticulated python for this list.

R is the largest letter alphabetically.

In other words, greater than B,

A, B, and A.

This works because the max function,

is defined in terms of the greater than comparison operator.

The greater than comparison operator,

is defined for many non-numeric types.

If you’re working with objects that can be compared with this,

then you can use max on a list of the objects.

For strings, the standard comparison is alphabetical.

So the maximum of this list,

is the element that appears last alphabetically.

Although you can create lists,

that hold a mix of elements of many types as you see here, integers and texts.

The max function is undefined for lists,

that contain elements from different incomparable types.

Here, you can see it breaks,

with this mix of datatypes.

Min is the opposite of max,

and returns the smallest element in a list.

Sorted returns a copy of a list,

in order from smallest to largest,

leaving the original lists unchanged.

Here, for a list called sizes,

the order is ascending.

You can sort from largest to smallest,

by adding the optional argument, reverse equals true.

Now, the order is descending.

이전에는 변수를 생성할 때

불변의 객체를 가지고 있던

그 불변 객체의 값은 메모리에 저장되었습니다.

여기에서 Jim이라는 값으로 이름을 만듭니다.

이를 Student라는 다른 변수에 할당합니다.

짐의 가치입니다.

학생에게 할당된 것입니다.

따라서 이름을 재지정할 때

Tim에게 업데이트하려면

이러한 변화는 학생의 가치에 반영되지 않습니다.

목록은 문자열과 다릅니다.

변경 가능합니다.

여기에서 우리는 점수 목록을 만들고,

변수 등급에 동일한 목록을 할당합니다. B,

C, A, D, B,

A, 여섯 개.

점수 목록을 변경하거나 변경하면

4학년을 D 대신 B로 만들고,

이것은 점수와 등급 모두에 영향을 미칩니다.

점수와 등급은 모두 동일한 기본 목록에 대한 변수 이름입니다.

두 이름 중 하나를 사용하여 해당 목록에 액세스하고 변경할 수 있습니다.

가변 객체와 불변 객체를 포함하는 변수의 동작,

매우 다르며 때로는 놀라운 것처럼 보일 수도 있습니다.

기능을 인쇄하고 가능한 한 작업을 다시 확인하는 데 사용되는 실험,

프로그램이 데이터를 올바르게 추적하는지 확인합니다.

목록을 실험하는 동안

익숙해져야 하는 몇 가지 유용한 기능이 있습니다.

Len, 목록에 있는 요소 수를 유지합니다.

Max, 목록의 가장 큰 요소를 유지합니다.

가장 큰 요소가 결정되는 방법,

목록에 있는 개체 유형에 따라 다릅니다.

숫자 목록의 최대 요소,

가장 큰 숫자입니다.

문자열 목록의 최대 요소,

마지막으로 발생하는 요소이며,

목록이 알파벳순으로 정렬된 경우.

이 목록에 대한 그물 모양의 파이썬입니다.

R은 알파벳순으로 가장 큰 문자입니다.

즉, B보다 크면,

A, B 및 A.

이것은 최대 기능 때문에 작동합니다.

보다 큼 비교 연산자로 정의됩니다.

보다 큼 비교 연산자,

숫자가 아닌 많은 유형에 대해 정의됩니다.

이것과 비교할 수 있는 개체로 작업하는 경우

그런 다음 객체 목록에서 max를 사용할 수 있습니다.

문자열의 경우 표준 비교는 알파벳순입니다.

따라서 이 목록의 최대값은

알파벳순으로 마지막에 나타나는 요소입니다.

목록을 만들 수 있지만

여기에서 볼 수 있듯이 정수와 텍스트 등 다양한 유형의 요소가 혼합되어 있습니다.

최대 함수는 목록에 대해 정의되지 않습니다.

비교할 수 없는 다른 유형의 요소를 포함합니다.

여기에서, 당신은 그것이 부서지는 것을 볼 수 있습니다,

이 데이터 유형의 혼합으로.

최소는 최대의 반대이고,

목록에서 가장 작은 요소를 반환합니다.

Sorted는 목록의 복사본을 반환합니다.

작은 것부터 큰 것 순으로,

원본 목록을 변경하지 않고 그대로 둡니다.

여기에서 크기라는 목록의 경우

오름차순입니다.

가장 큰 것부터 작은 것 순으로 정렬할 수 있고,

선택적 인수를 추가하여 reverse는 true와 같습니다.

이제 주문이 내림차순입니다.

Let’s introduce a new string method that works with lists.

Join. Join takes a list as an argument,

and returns a string consisting of the list elements,

joined by separator string.

In this example, we use a string backslash and,

as a separator, so that there’s a new line between each element.

Fore newline, aft newline, starboard newline, port.

We can also use other strings as separators would join.

Here, we use a hyphen.

It’s important to remember to separate each of

the items in the list you’re joining, with a comma.

Forgetting to do so, will not trigger an error,

but will also give you unexpected results.

In the example below,

omitting a comma between Garcia and Okelly,

results in the following: Notice how

the hyphen separator is missing between Garcia and Okelly,

and instead, the two strings were appended.

This happens because of Python’s default string literal appending.

If join returns different results than expected,

check for missing commas.

Also, note that join will trigger an error,

if we try to join anything other than strings.

We get an error here,

because an integer was included in the list.

Lastly, a helpful method called append,

adds an element to the end of the list.

Next, you’ll practice working with lists,

and explore more list methods.

목록과 함께 작동하는 새로운 문자열 메서드를 소개하겠습니다.

가입하다. Join은 목록을 인수로 취합니다.

목록 요소로 구성된 문자열을 반환합니다.

구분자 문자열로 결합됩니다.

이 예에서는 문자열 백슬래시를 사용하고,

각 요소 사이에 새 행이 있도록 구분 기호로 사용합니다.

앞 줄 바꿈, 뒤 줄 바꿈, 우현 줄 바꿈, 항구.

구분 기호가 결합될 때 다른 문자열을 사용할 수도 있습니다.

여기서는 하이픈을 사용합니다.

각각을 분리하는 것을 기억하는 것이 중요합니다.

가입하려는 목록의 항목을 쉼표로 표시합니다.

잊어 버리면 오류가 발생하지 않습니다.

그러나 또한 예상치 못한 결과를 줄 것입니다.

아래 예에서,

가르시아와 오켈리 사이에 쉼표를 생략하고,

결과는 다음과 같습니다.

가르시아와 오켈리 사이에 하이픈 구분 기호가 없습니다.

대신 두 문자열이 추가되었습니다.

이것은 Python의 기본 문자열 리터럴 추가 때문에 발생합니다.

조인이 예상과 다른 결과를 반환하면

누락된 쉼표를 확인합니다.

또한 조인하면 오류가 발생합니다.

문자열이 아닌 다른 것을 조인하려고 하면.

여기서 오류가 발생합니다.

목록에 정수가 포함되어 있기 때문입니다.

마지막으로, append라는 유용한 방법은,

목록의 끝에 요소를 추가합니다.

다음으로 목록 작업을 연습합니다.

더 많은 목록 방법을 탐색하십시오.

# Useful Functions for Lists II

### join method

Join is a string method that takes a list of strings as an argument, and returns a string consisting of the list elements joined by a separator string.

new_str = "\n".join(["fore", "aft", "starboard", "port"])
print(new_str)


Output:

fore
aft
starboard
port


In this example we use the string "\n" as the separator so that there is a newline between each element. We can also use other strings as separators with .join. Here we use a hyphen.

name = "-".join(["García", "O'Kelly"])
print(name)


Output:

García-O'Kelly


It is important to remember to separate each of the items in the list you are joining with a comma (,). Forgetting to do so will not trigger an error, but will also give you unexpected results.

### append method

A helpful method called append adds an element to the end of a list.

letters = ['a', 'b', 'c', 'd']
letters.append('z')
print(letters)


Output:

['a', 'b', 'c', 'd', 'z']


# Try It Out!

In the beginning of the first video, you saw how the behaviour of variables containing mutable and immutable objects is very different and might even seem surprising at times! Experiment, use the print functions and double-check your work where you can, to make sure that your programs correctly keep track of their data. While you experiment with lists, try out some of the useful functions above.