【问题标题】:python:Using split stringspython:使用拆分字符串
【发布时间】:2014-01-20 08:58:24
【问题描述】:

我的问题是我正在尝试修改文件中的单词,所以我在文件中查找作为字符串加载的单词,然后用新单词和拆分字符串重写文件。除了我不能似乎添加了文件的末尾,因为我收到“:”的语法错误。这一定是我犯的一个基本错误,但我找不到它。谁能帮帮我?

def modifier(aModif,nouvModif):
    #"""Permet de modifier un mot du dictionnaire"""
    #Qmodif = input("Quel mot voulez vous modifier ?")
    dico = open ('dico.txt','r+')
    texte= dico.read()
    print(type(texte))
    position=texte.index(aModif)
    dico.seek(0)
    dico.write(texte[:position]+ nouvModif + [(position + (len (aModif))): end])
    dico.close

modifier('blabla','ertddghdthdtqhdtheqhqtsgrgtetehfgh')

我尝试在':'后面不带结尾使用它,但仍然是同样的问题!

dico.write(texte[:position]+ nouvModif + [(position + (len (aModif))):])

【问题讨论】:

  • 为什么不使用dico.replace('blabla','ertddghdthdtqhdtheqhqtsgrgtetehfgh', 1 )

标签: python string split syntax-error


【解决方案1】:

[(position + (len (aModif))):] 是一个切片,其前面必须有一个 (¿ordered?) 可迭代对象。

例如'abcdef'[3:]'def',但单独使用[3:] 没有多大意义。

也许你在 nouvModif 之后的+ 是问题所在。

【讨论】:

  • 谢谢,但我是法国人,所以你能描述一下 iterable 是什么吗?
  • 列表、字符串、元组、...任何实现__iter__ 方法的东西。
  • 当然愚蠢的我非常感谢,我会尝试并让你更新!
  • @user3154918 是替换第一次出现的aModif 还是全部?
  • 只要一切正常,应该只发生一次。问题不在于+,而是我在[!之前忘记了'code'texte'code'。
猜你喜欢
  • 1970-01-01
  • 2010-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多