Како да се намали празно место од низа во Python


Вовед

Python обезбедува три методи кои можете да ги користите за да го намалите празното место од низата и да вратите нов објект на низа. Методите на стринг ленти може да го скратат предниот празен простор, празното место задоцнето или и двете. За да дознаете повеќе за отстранување на празни места, вклучително и како да се отстранат сите празни места или само дупликати, погледнете во Како да отстраните празни места од низа во Python.

Белата празнина ги вклучува сите знаци на празно место на Уникод, како што се празни места, табови (\t), врати за превоз (\r) и нови линии (\n ). Класата Python str() ги има следните методи што можете да ги користите за да го намалите празното место од низата:

  • лента([знаци]): Ги отсекува знаците од двата краја на низата. Кога знаци се исфрлени или Никој, враќа нова низа со отстранети сите предни и задоцнети празни места.
  • rstrip([chars]): Ги отсекува знаците од десната страна на низата. Кога знаци се испуштени или Никој, враќа нова низа со отстранети сите празни места.
  • lstrip([chars]): Скратува знаци од левата страна на низата. Кога знаци се исфрлени или Никој, враќа нова низа со отстранети сите предни празни места.

Скратување на празно место од низа со помош на методи на лента

Следниот пример покажува како да ги скратите водечките простори, просторите за задоцнување, како и предните и задниот простор од низа:

s1 = '  shark  '
print(f"string: '{s1}'")

s1_remove_leading = s1.lstrip()
print(f"remove leading: '{s1_remove_leading}'")

s1_remove_trailing = s1.rstrip()
print(f"remove trailing: '{s1_remove_trailing}'")

s1_remove_both = s1.strip()
print(f"remove both: '{s1_remove_both}'")

Излезот е:

string: '  shark  '
remove leading: 'shark  '
remove trailing: '  shark'
remove both: 'shark'

Следниот пример покажува како да се користат истите методи на ленти за скратување на повеќе знаци на празни места од низа:

s2 = '  \n shark\n squid\t  '
print(f"string: '{s2}'")

s2_remove_leading = s2.lstrip()
print(f"remove leading: '{s2_remove_leading}'")

s2_remove_trailing = s2.rstrip()
print(f"remove trailing: '{s2_remove_trailing}'")

s2_remove_both = s2.strip()
print(f"remove both: '{s2_remove_both}'")

Излезот е:

Output
string: ' shark squid ' remove leading: 'shark squid ' remove trailing: ' shark squid' remove both: 'shark squid'

Излезот покажува дека користењето на методите на ленти со испуштен аргумент chars ги отстранува само водечките и задоцнетите простори, новата линија и знаците на јазичето од низата. Секое празно место што не е на самиот почеток или на крајот на низата не се отстранува.

Скратување на специфичен знак на празно место од низа со помош на методи на лента

Можете исто така да отстраните само знак или знаци од почетокот и крајот на низата со наведување на аргументот знаци. Следниот пример покажува како да се скрати само главниот знак за нова линија од низата:

s3 = '\n  sammy\n  shark\t  '
print(f"string: '{s3}'")

s3_remove_leading_newline = s3.lstrip('\n')
print(f"remove only leading newline: '{s3_remove_leading_newline}'")

Излезот е:

Output
string: ' sammy shark ' remove only leading newline: ' sammy shark '

Излезот покажува дека методот lstrip() го отстранува водечкиот знак за нова линија, но не ги отстранува водечките празни места од низата.

Имајте предвид дека методот на ленти отстранува одредени знаци само кога тие се најоддалечените водечки и задоцнети знаци. На пример, не можете да користите rstrip() за да го отстраните само знакот заостаната картичка од s3=\n sammy\n ајкула\t поради празни места по \t.

Заклучок

Во оваа статија, ги користевте методите strip(), rstrip() и lstrip() за да го намалите предниот и задоцниот празен простор од низите. За да научите како да отстраните празни места и знаци од низи, погледнете ги упатствата за низи за Python.