例如,有一个字符串.EXAMPLE.
如何删除中间字符,即M从中删除?我不需要代码.我想知道:
Ned*_*der 592
在Python中,字符串是不可变的,因此您必须创建一个新字符串.您可以选择如何创建新字符串.如果你想删除它出现的'M':
newstr = oldstr.replace("M", "")
Run Code Online (Sandbox Code Playgroud)
如果要删除中心字符:
midlen = len(oldstr)/2 # //2 in python 3
newstr = oldstr[:midlen] + oldstr[midlen+1:]
Run Code Online (Sandbox Code Playgroud)
你询问字符串是否以特殊字符结尾.不,你是在想C程序员.在Python中,字符串以其长度存储,因此任何字节值(包括\0)都可以出现在字符串中.
rec*_*ive 64
这可能是最好的方法:
original = "EXAMPLE"
removed = original.replace("M", "")
Run Code Online (Sandbox Code Playgroud)
不要担心转移角色等.大多数Python代码都是在更高级别的抽象上进行的.
Eto*_* B. 58
要替换特定职位:
s = s[:pos] + s[(pos+1):]
Run Code Online (Sandbox Code Playgroud)
要替换特定字符:
s = s.replace('M','')
Run Code Online (Sandbox Code Playgroud)
kin*_*all 27
字符串是不可变的.但是您可以将它们转换为可更改的列表,然后在更改后将列表转换回字符串.
s = "this is a string"
l = list(s) # convert to list
l[1] = "" # "delete" letter h (the item actually still exists but is empty)
l[1:2] = [] # really delete letter h (the item is actually removed from the list)
del(l[1]) # another way to delete it
p = l.index("a") # find position of the letter "a"
del(l[p]) # delete it
s = "".join(l) # convert back to string
Run Code Online (Sandbox Code Playgroud)
您还可以创建一个新字符串,正如其他人所示,通过从现有字符串中获取所需字符以外的所有字符串.
Ste*_*ker 11
使用translate()方法:
>>> s = 'EXAMPLE'
>>> s.translate(None, 'M')
'EXAPLE'
Run Code Online (Sandbox Code Playgroud)
可变方式:
import UserString
s = UserString.MutableString("EXAMPLE")
>>> type(s)
<type 'str'>
# Delete 'M'
del s[3]
# Turn it for immutable:
s = str(s)
Run Code Online (Sandbox Code Playgroud)
小智 6
def kill_char(string, n): # n = position of which character you want to remove
begin = string[:n] # from beginning to n (n not included)
end = string[n+1:] # n+1 through end of string
return begin + end
print kill_char("EXAMPLE", 3) # "M" removed
Run Code Online (Sandbox Code Playgroud)
我看到这个地方在这里。
小智 6
card = random.choice(cards)
cardsLeft = cards.replace(card, '', 1)
Run Code Online (Sandbox Code Playgroud)
如何从字符串中删除一个字符: 这是一个示例,其中有一堆卡片表示为字符串中的字符.其中一个是绘制的(import.choice()函数的导入随机模块,它在字符串中选择一个随机字符).创建一个新字符串cardsLeft来保存由字符串函数replace()给出的剩余卡片,其中最后一个参数表示只有一个"卡片"将由空字符串替换...
| 归档时间: |
|
| 查看次数: |
1406215 次 |
| 最近记录: |