Yanıtlar:
python 2.x
s = ":dfa:sif:e"
print s[1:]
python 3.x
s = ":dfa:sif:e"
print(s[1:])
her iki baskı
dfa:sif:e
Sorununuz belirsiz görünüyor. "Belirli bir konumdaki bir karakteri" kaldırmak istediğinizi ve sonra belirli bir karakteri kaldırmak istediğinizi söyleyin.
Yalnızca ilk karakteri kaldırmanız gerekirse:
s = ":dfa:sif:e"
fixed = s[1:]
Bir karakteri belirli bir konumdan kaldırmak istiyorsanız şunları yaparsınız:
s = ":dfa:sif:e"
fixed = s[0:pos]+s[pos+1:]
Belirli bir karakteri kaldırmanız gerekiyorsa, ':' deyin, bir dizede ilk kez karşılaşıldığında şunu yaparsınız:
s = ":dfa:sif:e"
fixed = ''.join(s.split(':', 1))
s.replace(":", "", 1)-
Dizenin yapısına bağlı olarak şunları kullanabilirsiniz lstrip:
str = str.lstrip(':')
Ama bu başlangıçtaki tüm iki nokta üst üste işaretlerini kaldıracaktır, yani eğer varsa ::foosonuç ortaya çıkar foo. Ancak, iki nokta üst üste ile başlamayan dizeleriniz varsa ve o zaman ilk karakteri kaldırmak istemiyorsanız bu işlev yararlıdır.
karakter silme:
def del_char(string, indexes):
'deletes all the indexes from the string and returns the new one'
return ''.join((char for idx, char in enumerate(string) if idx not in indexes))
dizinlerdeki tüm karakterleri siler; ile davanızda kullanabilirsinizdel_char(your_string, [0])