Практика Shadowing: List Comprehension || Python Tutorial || Learn Python Programming - Изучайте разговорный английский с YouTube

C1
⏸ Пауза
When coding, you spend a lot of time making lists.
97 предложений
Если предложения слишком короткие или длинные, нажмите Edit, чтобы их изменить.
1
When coding, you spend a lot of time making lists.
2
In many languages this can be tedious.
3
Create an empty list, set up a for loop, then add the items to the list one by one.
4
Python cares about your sanity and gives you a tool to simplify this process, list comprehensions.
5
In most cases, list comprehensions let you construct a list in a single line of code.
6
It's now time for Python to shine and save time with a single line.
7
We will cover many examples of list comprehensions, but first, let's talk about them generally.
8
In Python, lists are a collection of data surrounded by brackets, and the elements are separated by commas.
9
A list comprehension is also surrounded by brackets, but instead of a list of data inside, you enter an expression followed by for loops and if clauses.
10
Here is the most basic form for a list comprehension.
11
The first expression generates the elements in the list, in the list, and you follow this with a for loop over some collection of data.
12
This will evaluate the expression for every item in the collection.
13
If you only want to include the expression for certain pieces of data, you can add on an if clause after the for loop.
14
The expression will be added to the list only if the if clause is true.
15
You can even have more than one if clause, and the expression is in the list only if all the if clauses are true.
16
And you can even loop over more than one collection.
17
Let's now see some examples.
18
For our first example, let's create a list of the squares of the first 100 positive integers.
19
Let's first do this without list comprehensions.
20
To begin, you might create an empty list called squares.
21
Next, you would loop over the first 100 positive integers.
22
You would then append the square of i to the list squares.
23
Don't forget that an exponent in Python is represented by double asterisks.
24
Why, oh why, do they not use the intergalactic mathematical notation for exponents?
25
To see that this works print the list squares Let's do this once more using list comprehensions.
26
We will call the list comprehension squares 2
27
Open with a bracket then first type the expression for each term in the list
28
Finally enter the desired for loop
29
if you print this you get the exact same list But we only needed one line of code instead of three
30
Let's now look at a slightly more complex example.
31
We'll create a list of remainders when you divide the first 100 squares by 5.
32
To find the remainder when you divide by 5, use the % operator.
33
In mathematics, this is the same as taking the square mod 5.
34
If you print the list, you'll see there are only 3 perfect squares mod 5, 0, 1, and 4.
35
Let's do this again but look at the remainders when you divide the squares by 11.
36
We see the perfect squares mod 11 are 0, 1, 3, 4, 5, 9.
37
This example shows you that the expressions in the list comprehension can be complex.
38
By the way, if you look at the remainders when you divide by a prime number p, you'll notice an interesting pattern.
39
The number of remainders is p plus 1 divided by 2.
40
The problem of finding which numbers appear in the list is a complex puzzle from number theory known as quadratic reciprocity, and was first proved by Gauss.
41
Next, let's create a list comprehension that has an if clause.
42
Suppose we have a list of movies and we want to find those movies that start with the letter G.
43
Let's see how to do this with and without list comprehensions.
44
If you were not using list comprehensions, you'd start by making an empty list.
45
Next, loop over the list of movies.
46
We can use the starts with method to see if the title starts with the letter G.
47
If it does, then append it to our list.
48
Print the list to make sure that it worked.
49
But this four-line routine can be done in a single line with a list comprehension.
50
The expression we want to appear in our list is simply the title.
51
Next, loop over the movies.
52
But also, check that the title starts with the letter G.
53
Print and observe.
54
We get the same answer with a single line of code.
55
Let's complicate this example a bit more.
56
Suppose our list of movies is a list of tuples
57
containing both the title of the movie and the year it was released.
58
What if we want a list of the titles of all movies that were released before the year 2000?
59
How would you do this using list comprehensions?
60
As before, we want our list to only contain the titles, but this time, when we write the for loop, each element is a tuple.
61
Next, we select the movies released before 2000 using an if clause on the year.
62
If you print the list, you can see that it worked.
63
In this example, the IF block used the year, but the year was not included in the list.
64
Only the title is included.
65
Let's see a mathematical example.
66
Suppose you use a list to represent a vector.
67
How would you perform scalar multiplication on this vector?
68
That is, what if we want to multiply each number by 4?
69
You might be tempted to try 4 times v, but look what happens.
70
This is unusual.
71
What happened here is 4 times v is the same as v plus v plus v plus v.
72
And in Python, if you add two lists, it concatenates them, rather than adding them component-wise.
73
For example, if you add 2, 4, 6 and 1, 3, you get the list 2, 4, 6, 1, 3.
74
So 4 times v is just a list containing four copies of v.
75
This is not what we want.
76
We can achieve scalar multiplication with a list comprehension.
77
Just make a list comprehension where you multiply each component by 4.
78
If you print this vector, you can see we get the desired result.
79
For our final example, let's use list comprehensions to compute the Cartesian product of sets.
80
The Cartesian product is named after the French scholar René Descartes.
81
Recall that if you have two sets A and B, then the Cartesian product is the set of pairs where the first component is in A
82
and the second component is from B.
83
You can write this mathematically like this.
84
For example, if A is the set and B is the set , then the Cartesian product is the set of pairs .
85
Let's use list comprehensions to compute the Cartesian product of two sets.
86
Let A be the list of odd integers 1, 3, 5, and 7.
87
Let B be the list of even integers .
88
To compute the Cartesian product, create a list comprehension where each term is the tuple a, b.
89
Next, write a for loop over the elements of a, and then a for loop over the elements of b.
90
If you print the product, you can see the list contains all 16 possible pairs.
91
Using this technique, you can even compute the Cartesian product of three or more sets.
92
With list comprehensions, you can build complex lists using a single line of code.
93
And with Socratica, you can learn complex topics in a single video.
94
So please, append yourself to our list of subscribers.
95
And if you are in a position to help financially, we would be honored to add you to our list of patrons.
96
Now go forth and code compactly.
97
you

Скачать приложение

Everything you need to speak fluently

AI PronunciationScore every sentence
IPA PracticeMaster every sound
VocabularyBuild your word bank
Vocab GameLearn while playing

Об этом уроке

В этом уроке вы будете практиковать разговорный английский, изучая, как использовать списковые включения в языке программирования Python. Это мощный инструмент, который позволяет создавать списки в одном выражении, вместо того чтобы писать много строк кода. Вы научитесь не только основам списковых включений, но и тому, как они могут улучшить вашу способность к программированию в Python. Эта практика поможет вам развить навыки восприятия и воспроизведения информации на английском языке и улучшить ваше беглое произношение.

Ключевая лексика и фразы

  • Списковые включения - list comprehensions
  • Целые числа - integers
  • Остаток от деления - remainder
  • Модуль - modulus
  • Круглая скобка - parentheses
  • Цикл for - for loop
  • Выражение - expression
  • Условие if - if clause

Советы по практике

Для эффективной практики разговорного английского, рекомендуется использовать метод shadow speech. Смотрите видео на английском языке и повторяйте за диктором, стараясь угадывать интонацию и ритм. Видео с примерами списковых включений в Python представляют собой отличный материал. Сначала смотрите и слушайте, как диктор объясняет материал, а затем попробуйте сами прокомментировать те же идеи, используя изученные слова и фразы. Обратите внимание на скорость речи: видео может идти довольно быстро, поэтому не стесняйтесь ставить паузу, чтобы успеть повторить. Уделяйте внимание произношению ключевых терминов, таких как "list comprehensions" и "for loop". Это поможет вам улучшить навыки говорения и уверенно использовать практику разговорного английского. С помощью shadowspeak вы сможете легко учить английский с YouTube, и этот метод значительно улучшит ваше понимание и произношение.

Что такое техника Shadowing?

Shadowing — это научно обоснованная техника изучения языка, изначально разработанная для подготовки профессиональных переводчиков и популяризированная полиглотом доктором Александром Аргуэльесом. Метод прост, но эффективен: вы слушаете аудио на английском от носителей языка и немедленно повторяете вслух — как тень, следующая за говорящим с задержкой в 1–2 секунды. В отличие от пассивного прослушивания или грамматических упражнений, Shadowing заставляет мозг и мышцы рта одновременно обрабатывать и воспроизводить реальные речевые паттерны. Исследования показывают, что это значительно улучшает точность произношения, интонацию, ритм, связную речь, понимание на слух и беглость речи — что делает его одним из самых эффективных методов для подготовки к IELTS Speaking и реального общения на английском.