溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何使用python修改文件并立即寫回到原始位置操作

發(fā)布時(shí)間:2020-06-28 11:29:45 來(lái)源:億速云 閱讀:306 作者:清晨 欄目:開(kāi)發(fā)技術(shù)

這篇文章將為大家詳細(xì)講解有關(guān)如何使用python修改文件并立即寫回到原始位置操作,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

很多應(yīng)用多需要處理文件,而處理文件有一個(gè)固定的模式:打開(kāi)文件,讀入一些數(shù)據(jù),處理這些數(shù)據(jù),打印到屏幕上或?qū)懭肓硪粋€(gè)文件。

那么,如果我們想修改之后立即寫回文件,該怎么做呢?用什么模式打開(kāi)?又怎么讀寫?

我個(gè)人嘗試了很多中方法,不是無(wú)法實(shí)現(xiàn),就是操作非常麻煩。最終放棄。

幸運(yùn)的是,Python內(nèi)置模塊fileinput就可以輕松完成。代碼如下:

import fileinput
for line in fileinput.input(r"D:\1.txt", inplace=1):
  print line.replace('d', 'b'),

足夠簡(jiǎn)單吧。(將文件中的‘d'替換成'b')。

關(guān)于更多fileinput的資料,在這里http://docs.python.org/library/fileinput.html

補(bǔ)充知識(shí):python在一個(gè)字符串中找到另外一個(gè)字符串并找到該字符起始的位置

如何使用python修改文件并立即寫回到原始位置操作

代碼詳解

def index_of_str(seq, sub_seq):
  index=[]
  n1=len(seq)
  n2=len(sub_seq)
  for i in range(n1-n2+1):
    #print('seq==%s' % (seq[i:i + n2]))
    if seq[i:i+n2]==sub_seq:
      #print('seq==%s'%(seq[i:i+n2]))
      index.append(i+1)
  print(index)
index_of_str('ATGATAGAGGGATACGGGATAG', 'GATA')
 
def index_of_str(s1, s2):
  global dex
  dex=0
  index=[]
  lt=s1.split(s2)
  print(lt)
  num=len(lt)
  for i in range(num-1):
    dex+=len(lt[i])
    index.append(dex)
    dex+=len(s2)
  print(index)
  #if len(lt)==1:
    #return -1
  #return len(lt[0])
print(index_of_str('ATGATAGAGGGATACGGGATAG', 'GATA'))


關(guān)于如何使用python修改文件并立即寫回到原始位置操作就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI