Відповіді:
пітон 2.х
s = ":dfa:sif:e"
print s[1:]
пітон 3.x
s = ":dfa:sif:e"
print(s[1:])
обидва відбитки
dfa:sif:e
Ваша проблема здається незрозумілою. Ви кажете, що хочете видалити "персонажа з певної позиції", потім продовжуйте говорити, що хочете видалити певного символу.
Якщо вам потрібно видалити лише перший символ, ви зробите це:
s = ":dfa:sif:e"
fixed = s[1:]
Якщо ви хочете видалити персонаж з певної позиції, ви зробите:
s = ":dfa:sif:e"
fixed = s[0:pos]+s[pos+1:]
Якщо вам потрібно видалити певний символ, скажіть ":", коли він вперше зустрічається в рядку, ви зробите це:
s = ":dfa:sif:e"
fixed = ''.join(s.split(':', 1))
s.replace(":", "", 1)
-
Залежно від структури рядка, ви можете використовувати lstrip
:
str = str.lstrip(':')
Але це видалить усі колонки на початку, тобто якщо у вас є ::foo
, результат був би foo
. Але ця функція корисна, якщо у вас також є рядки, які не починаються двокрапкою, і ви не хочете видаляти перший символ тоді.
видалення знака:
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))
він видаляє всі знаки, що знаходяться в індексах; ви можете використовувати його у вашому випадку зdel_char(your_string, [0])