π ΠΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· ΡΠ°ΠΉΠ»Π° Python: ΠΏΠΎΡΠ°Π³ΠΎΠ²Π°Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ
Π§ΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· ΡΠ°ΠΉΠ»Π° Π² Python, Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ:
- ΠΡΠΊΡΡΡΡ ΡΠ°ΠΉΠ» Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π·Π°ΠΏΠΈΡΠΈ (write mode).
- ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄
truncate()
Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΡΡΠ΅ΡΡΠ²ΡΡΡΠ΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°.
with open("ΡΠ°ΠΉΠ».txt", "w") as file:
file.truncate()
ΠΡΠΎΡ ΠΊΠΎΠ΄ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ ΡΠ°ΠΉΠ» "ΡΠ°ΠΉΠ».txt" Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π·Π°ΠΏΠΈΡΠΈ (write mode) ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠ΅ΡΠΎΠ΄ truncate()
Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ.
ΠΠ΅ΡΠ°Π»ΡΠ½ΡΠΉ ΠΎΡΠ²Π΅Ρ
ΠΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΈΠ· ΡΠ°ΠΉΠ»Π° Π² Python
Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠ· ΡΠ°ΠΉΠ»Π° - ΡΡΠΎ Π²Π°ΠΆΠ½Π°Ρ Π·Π°Π΄Π°ΡΠ°, ΠΊΠΎΡΠΎΡΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅ΡΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Python. Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ², ΠΊΠ°ΠΊ ΡΠ΄Π°Π»ΠΈΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ°ΠΉΠ»Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Python.
1. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°
ΠΠ΅ΡΠ²ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π²ΡΠ΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°. ΠΠ»Ρ ΡΡΠΎΠ³ΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΠ½ΠΊΡΠΈΡ truncate() Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π·Π°ΠΏΠΈΡΠΈ (write mode).
with open('file.txt', 'w') as file:
file.truncate(0)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΌΡ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠ°ΠΉΠ» "file.txt" Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π·Π°ΠΏΠΈΡΠΈ ('w') ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ truncate(0), ΡΡΠΎΠ±Ρ ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π°. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ 0 ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΠΎΠ΅ Π² truncate() ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΌΡ Ρ ΠΎΡΠΈΠΌ ΡΠ΄Π°Π»ΠΈΡΡ Π²ΡΠ΅ ΡΠΈΠΌΠ²ΠΎΠ»Ρ ΠΈΠ· ΡΠ°ΠΉΠ»Π°.
2. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΡ ΡΡΡΠΎΠΊ
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΡΠ΅ ΡΡΡΠΎΠΊΠΈ ΠΈΠ· ΡΠ°ΠΉΠ»Π°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΠΎΠ΄Ρ ΠΎΠ΄.
def remove_lines(filename, lines):
with open(filename, 'r') as file:
lines_to_keep = file.readlines()
with open(filename, 'w') as file:
for line in lines_to_keep:
if line.strip() not in lines:
file.write(line)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ remove_lines, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° ΠΈ ΡΠΏΠΈΡΠΎΠΊ ΡΡΡΠΎΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½ΡΠΆΠ½ΠΎ ΡΠ΄Π°Π»ΠΈΡΡ. Π‘Π½Π°ΡΠ°Π»Π° ΠΌΡ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠ°ΠΉΠ» Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΡΠ΅Π½ΠΈΡ ΠΈ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΠΌ Π²ΡΠ΅ ΡΡΡΠΎΠΊΠΈ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ lines_to_keep. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠ°ΠΉΠ» Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ ΡΡΡΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ Π½Π°Ρ ΠΎΠ΄ΡΡΡΡ Π² ΡΠΏΠΈΡΠΊΠ΅ ΡΡΡΠΎΠΊ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ.
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ·Π²Π°ΡΡ Π΅Π΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
remove_lines('file.txt', ['ΡΡΡΠΎΠΊΠ° 1', 'ΡΡΡΠΎΠΊΠ° 2'])
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΌΡ ΡΠ΄Π°Π»ΡΠ΅ΠΌ ΡΡΡΠΎΠΊΠΈ 'ΡΡΡΠΎΠΊΠ° 1' ΠΈ 'ΡΡΡΠΎΠΊΠ° 2' ΠΈΠ· ΡΠ°ΠΉΠ»Π° "file.txt". ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠΏΠΈΡΠΎΠΊ ΡΡΡΠΎΠΊ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π²Π°ΡΠΈΠΌΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡΠΌΠΈ.
3. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΊΡΡΠ°
ΠΡΠ»ΠΈ Π²Ρ Ρ ΠΎΡΠΈΡΠ΅ ΡΠ΄Π°Π»ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΊΡΡ ΠΈΠ· ΡΠ°ΠΉΠ»Π°, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅Π³ΡΠ»ΡΡΠ½ΡΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΌ re. ΠΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ:
import re
def remove_text(filename, text):
with open(filename, 'r') as file:
content = file.read()
updated_content = re.sub(text, '', content)
with open(filename, 'w') as file:
file.write(updated_content)
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΌΡ ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ remove_text, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° ΠΈ ΡΠ΅ΠΊΡΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ. Π‘Π½Π°ΡΠ°Π»Π° ΠΌΡ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠ°ΠΉΠ» Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΡΠ΅Π½ΠΈΡ ΠΈ ΡΡΠΈΡΡΠ²Π°Π΅ΠΌ Π΅Π³ΠΎ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ Π² ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ content. ΠΠ°ΡΠ΅ΠΌ ΠΌΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΡ re.sub() Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΊΡΡΠ° ΠΈΠ· ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ content. ΠΠ°ΠΊΠΎΠ½Π΅Ρ, ΠΌΡ ΠΎΡΠΊΡΡΠ²Π°Π΅ΠΌ ΡΠ°ΠΉΠ» Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π·Π°ΠΏΠΈΡΠΈ ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅ΠΌ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½Π½ΠΎΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ΅ ΡΠ°ΠΉΠ»Π°.
Π§ΡΠΎΠ±Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ·Π²Π°ΡΡ Π΅Π΅ ΡΠ»Π΅Π΄ΡΡΡΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ:
remove_text('file.txt', 'ΡΠ΅ΠΊΡΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ')
Π ΡΡΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅, ΠΌΡ ΡΠ΄Π°Π»ΡΠ΅ΠΌ ΡΠ΅ΠΊΡΡ 'ΡΠ΅ΠΊΡΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ' ΠΈΠ· ΡΠ°ΠΉΠ»Π° "file.txt". ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΠΈΠ·ΠΌΠ΅Π½ΡΡΡ ΡΠ΅ΠΊΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π²Π°ΡΠΈΠΌΠΈ ΠΏΠΎΡΡΠ΅Π±Π½ΠΎΡΡΡΠΌΠΈ.
ΠΠ°ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅
Π ΡΡΠΎΠΉ ΡΡΠ°ΡΡΠ΅ ΠΌΡ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π»ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΈΠ· ΡΠ°ΠΉΠ»Π° Ρ ΠΏΠΎΠΌΠΎΡΡΡ Python. ΠΡ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π²ΡΠ±ΡΠ°ΡΡ ΠΏΠΎΠ΄Ρ ΠΎΠ΄, ΠΊΠΎΡΠΎΡΡΠΉ Π»ΡΡΡΠ΅ Π²ΡΠ΅Π³ΠΎ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΠΈΡ Π΄Π»Ρ Π²Π°ΡΠ΅ΠΉ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ. Π£Π΄Π°ΡΠΈ Π²Π°ΠΌ Π² ΡΠ°Π±ΠΎΡΠ΅ Ρ ΡΠ°ΠΉΠ»Π°ΠΌΠΈ Π² Python!