π¨ ΠΠ°ΠΊ ΡΠ°Π·Π±ΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΠΈΡΠΊΠ° Π² Python: ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈ ΡΠΎΠ²Π΅ΡΡ
Π§ΡΠΎΠ±Ρ ΡΠ°Π·Π±ΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΠΈΡΠΊΠ° Π² Python, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΠΎΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡΡΡ ΡΡΠ΅Π·Π°ΠΌΠΈ (slicing) ΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠΌ split()
. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅ΡΡ:
list1 = [1, 2, 3, 4, 5]
split_list = list1[:3] # Π Π°Π·Π΄Π΅Π»ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π° ΠΏΠ΅ΡΠ²ΡΠ΅ ΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°
print(split_list) # ΠΡΠ²ΠΎΠ΄: [1, 2, 3]
string = "Hello, World!"
split_string = string.split(",") # Π Π°Π·Π΄Π΅Π»ΠΈΡΡ ΡΡΡΠΎΠΊΡ ΠΏΠΎ Π·Π°ΠΏΡΡΠΎΠΉ
print(split_string) # ΠΡΠ²ΠΎΠ΄: ['Hello', ' World!']
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΡΠ°Π·Π±ΠΈΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ ΡΠΏΠΈΡΠΊΠ° Π² Python
Python - ΠΌΠΎΡΠ½ΡΠΉ ΠΈ Π»Π΅Π³ΠΊΠΈΠΉ Π² ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠΈ ΡΠ·ΡΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, ΡΠΈΡΠΎΠΊΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΠ΅ΠΌΡΠΉ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠ². ΠΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ°ΠΌΡΡ Π²ΠΎΡΡΡΠ΅Π±ΠΎΠ²Π°Π½Π½ΡΡ Π½Π°Π²ΡΠΊΠΎΠ² Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΠΈ - ΡΠ°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΠΈΡΠΊΠ° Π½Π° ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΡΠ°ΡΡΠΈ. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΠΈΡΠΊΠ° ΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈΠΌ ΠΏΡΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ΄Π°.
1. Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠ° Π½Π° ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠΈ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π° ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠΈ ΡΠΈΠΊΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΡΠ°Π·ΠΌΠ΅ΡΠ°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ chunks
ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ more-itertools
. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°, Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΡΡΠΈΠΉ ΡΡΠΎ:
from more_itertools import chunked
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
chunk_size = 3
sublists = list(chunked(my_list, chunk_size))
print(sublists)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ my_list
Π±ΡΠ» ΡΠ°Π·Π΄Π΅Π»Π΅Π½ Π½Π° ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 3 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΊΠ°ΠΆΠ΄ΡΠΉ.
2. Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠ° Π½Π° ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ΅Π·ΠΎΠ²
ΠΡΡΠ³ΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π° ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠΈ - ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ΅Π·Ρ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠ΅Π·ΠΎΠ² Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠΊΠ°Π·Π°ΡΡ Π½Π°ΡΠ°Π»ΡΠ½ΡΠΉ ΠΈ ΠΊΠΎΠ½Π΅ΡΠ½ΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡΡ Π΄Π»Ρ Π²ΡΠ΄Π΅Π»Π΅Π½ΠΈΡ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΡΠΏΠΈΡΠΊΠ°. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°:
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
chunk_size = 3
sublists = [my_list[i:i+chunk_size] for i in range(0, len(my_list), chunk_size)]
print(sublists)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
[[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ my_list
ΡΠ°ΠΊΠΆΠ΅ Π±ΡΠ» ΡΠ°Π·Π΄Π΅Π»Π΅Π½ Π½Π° ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 3 ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΊΠ°ΠΆΠ΄ΡΠΉ, Π½ΠΎ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ΅Π·ΠΎΠ².
3. Π Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΡΠΏΠΈΡΠΊΠ° Π½Π° ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠΈ ΠΏΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ
ΠΡΠ»ΠΈ Π²Ρ Ρ
ΠΎΡΠΈΡΠ΅ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΡ ΡΠΏΠΈΡΠΎΠΊ Π½Π° ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ groupby
ΠΈΠ· ΠΌΠΎΠ΄ΡΠ»Ρ itertools
. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΊΠΎΠ΄Π°:
from itertools import groupby
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
value = 5
sublists = [list(group) for key, group in groupby(my_list, lambda x: x > value)]
print(sublists)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π±ΡΠ΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ:
[[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠΏΠΈΡΠΎΠΊ my_list
Π±ΡΠ» ΡΠ°Π·Π΄Π΅Π»Π΅Π½ Π½Π° ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠΈ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ 5. ΠΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ, ΠΌΠ΅Π½ΡΡΠΈΠ΅ ΠΈΠ»ΠΈ ΡΠ°Π²Π½ΡΠ΅ 5, ΠΎΠΊΠ°Π·Π°Π»ΠΈΡΡ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΠ΄ΡΠΏΠΈΡΠΊΠ΅, Π° ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΡ - Π² Π΄ΡΡΠ³ΠΎΠΌ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
ΠΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΠΏΠΎΡΠΎΠ±Ρ ΡΠ°Π·Π±ΠΈΠ΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΡΠΏΠΈΡΠΊΠ° Π² Python. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡΠΈΠΉ ΠΌΠ΅ΡΠΎΠ΄ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ. ΠΠ΅ Π·Π°Π±ΡΠ²Π°ΠΉΡΠ΅ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ ΠΏΠΎΠ»ΡΡΠ΅Π½Π½ΡΠ΅ Π·Π½Π°Π½ΠΈΡ Π² ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΈ ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°ΡΡ Ρ ΠΊΠΎΠ΄ΠΎΠΌ.