πŸ” Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами значСния Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Python: простоС руководство πŸ”

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами значСния Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Python, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ распаковки. Π’ΠΎΡ‚ Π΄Π²Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΊΠΎΠ΄Π°:


# Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ
a = 10
b = 20

temp = a
a = b
b = temp

print("a =", a)
print("b =", b)

# Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ распаковки
a = 10
b = 20

a, b = b, a

print("a =", a)
print("b =", b)

Оба этих ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΏΠΎΠΌΠ΅Π½ΡΡŽΡ‚ значСния ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ a ΠΈ b, Ρ‡Ρ‚ΠΎΠ±Ρ‹ a содСрТало ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ b, Π° b содСрТало ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ a.

Π”Π΅Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΡ‚Π²Π΅Ρ‚

Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами значСния Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Python

Π—Π°Π΄Π°Ρ‡Π° ΠΏΠΎ ΠΎΠ±ΠΌΠ΅Π½Ρƒ значСниями ΠΌΠ΅ΠΆΠ΄Ρƒ двумя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ являСтся довольно распространСнной Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ. Π’ Python сущСствуСт нСсколько способов Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим нСсколько ΠΈΠ· Π½ΠΈΡ….

1. Π‘ использованиСм Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ

Один ΠΈΠ· простых способов - это использованиС Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ для Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ хранСния значСния ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Π”Π°Π»Π΅Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‚ шаги, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π½Π°ΠΌ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ значСния мСстами:


a = 10
b = 20

# ОбмСн значСниями
temp = a
a = b
b = temp

print("a =", a)
print("b =", b)
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ создаСм Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ "temp", Π² ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ сохраняСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a". Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ присваиваСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "b" ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a" ΠΈ Π½Π°ΠΊΠΎΠ½Π΅Ρ†, присваиваСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "temp" ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "b". Π’Π΅ΠΏΠ΅Ρ€ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… помСнялись мСстами.

2. Π‘ использованиСм арифмСтичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ способ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ значСния мСстами - это использованиС арифмСтичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ слоТСниС ΠΈ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π½ΠΈΠ΅. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:


a = 10
b = 20

# ОбмСн значСниями
a = a + b
b = a - b
a = a - b

print("a =", a)
print("b =", b)
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ сначала добавляСм Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a" ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "b" ΠΈ присваиваСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a". Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΈΠ· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a" Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "b" ΠΈ присваиваСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "b". НаконСц, ΠΌΡ‹ Π²Ρ‹Ρ‡ΠΈΡ‚Π°Π΅ΠΌ ΠΈΠ· ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a" Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "b" ΠΈ присваиваСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a".

3. Π‘ использованиСм ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания Π² ΠΎΠ΄Π½ΠΎΠΉ строкС

Π’ Python ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… мСстами, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ присваивания Π² ΠΎΠ΄Π½ΠΎΠΉ строкС. Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:


a = 10
b = 20

# ОбмСн значСниями
a, b = b, a

print("a =", a)
print("b =", b)
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ присваивания Π² ΠΎΠ΄Π½ΠΎΠΉ строкС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… "a" ΠΈ "b" мСстами. Π‘Π½Π°Ρ‡Π°Π»Π° Π² ΠΏΡ€Π°Π²ΠΎΠΉ части ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… "b" ΠΈ "a" Π² Π½ΡƒΠΆΠ½ΠΎΠΌ порядкС, Π° Π·Π°Ρ‚Π΅ΠΌ Π² Π»Π΅Π²ΠΎΠΉ части ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΊΡƒΠ΄Π° Π±ΡƒΠ΄ΡƒΡ‚ присвоСны значСния. Π—Π°Ρ‚Π΅ΠΌ значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ мСстами.

4. Π‘ использованиСм ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° XOR

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ интСрСсный способ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ значСния мСстами - это использованиС ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π° XOR (^). Рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€:


a = 10
b = 20

# ОбмСн значСниями
a = a ^ b
b = a ^ b
a = a ^ b

print("a =", a)
print("b =", b)
    

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ сначала примСняСм ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ XOR ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ "a" ΠΈ "b" ΠΈ присваиваСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a". Π—Π°Ρ‚Π΅ΠΌ ΠΌΡ‹ примСняСм ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ XOR ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a" ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "b", ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π½ΠΎΠ²ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a", ΠΈ присваиваСм Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "b". ПослСдним шагом ΠΌΡ‹ снова примСняСм ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ XOR ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "a" ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ "b", ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π½ΠΎΠ²Ρ‹Π΅ значСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ исходныС значСния.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ рассмотрСли нСсколько способов ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ значСния Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… мСстами Π² Python. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ любой ΠΈΠ· этих способов, Π² зависимости ΠΎΡ‚ Π²Π°ΡˆΠΈΡ… ΠΏΡ€Π΅Π΄ΠΏΠΎΡ‡Ρ‚Π΅Π½ΠΈΠΉ ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ. НадСюсь, эта информация окаТСтся ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ для вас!

Π’ΠΈΠ΄Π΅ΠΎ ΠΏΠΎ Ρ‚Π΅ΠΌΠ΅

Python l ОбмСн Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…. Π‘Π΅Π· Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ

Python - мСняСм значСния Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… мСстами

Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами значСния Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…

ΠŸΠΎΡ…ΠΎΠΆΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:

Как ΠΊΠΈΠ½ΡƒΡ‚ΡŒ exception Π² Python: ΠΎΠ±Π·ΠΎΡ€ Ρ‚Π΅Ρ…Π½ΠΈΠΊ ΠΈ совСтов!

πŸ”ŽΠšΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Π΅Ρ‚Π½ΠΎΡΡ‚ΡŒ Π² ΠŸΠΈΡ‚ΠΎΠ½Π΅: пошаговоС руководство для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ…πŸ”Ž

πŸ”§ Как ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΌΠΎΠ΄ΡƒΠ»ΠΈ для Python: пошаговая инструкция

πŸ” Как ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ мСстами значСния Π΄Π²ΡƒΡ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π² Python: простоС руководство πŸ”

🐍Как Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ Python Π½Π° Mac: простой Π³Π°ΠΉΠ΄ ΠΈ инструкция

πŸ”Ž Как ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Π² Python: Π»Π΅Π³ΠΊΠΈΠΉ ΠΈ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Ρ‹ΠΉ Π³Π°ΠΉΠ΄

πŸ”₯Как вывСсти Π² ΠΏΠΈΡ‚ΠΎΠ½Π΅ числа Π² строку: простой ΠΌΠ΅Ρ‚ΠΎΠ΄ пошагово