學習了python中的全域性文字檢索替換指令碼

2021-10-21 23:58:18 字數 811 閱讀 5953

最近跟隨alex學到了乙個指令碼,是全域性文字檢索替換。

要求如下:

寫乙個指令碼﹐允許使用者按以下方式執行時﹐即可以對指定檔案內容進行全域性替換﹐且替換完畢後列印替換了多少處內容

寫完後的指令碼呼叫方式∶

python your_script.py old_str new_str filename

**如下:

# encoding: utf-8

import sys

print(sys.ar**) # 列印命令列引數

old_str = sys.ar**[1]

new_str = sys.ar**[2]

filename = sys.ar**[3]

# 1.將檔案中的資料讀入記憶體中

f = open(filename,'r+')

data = f.read()

old_str_count = data.count(old_str)

new_data = data.replace(old_str,new_str)

# 3.清除舊檔案中的內容

f.seek(0)

f.truncate()

# 4.將新的資料寫入檔案中

f.write(new_data)

f.close()

print(f"已成功將''替換成'',共替換了處")

'''我困惑的地方: 這個指令碼用於修改英文是沒有問題的,但是不能識別修改中文,請大家解答我的困惑'''

Python中的全域性變數

全域性變數不符合引數傳遞的精神,所以,平時我很少使用,除非定義常量。今天有同事問乙個關於全域性變數的問題,才發現其中原來還有門道。程式大致是這樣的 constant 0 def modifyconstant print constant constant 1 return if name main ...

python 中全域性函式的使用

import 關鍵字 匯入模組 全域性函式 print input dir import math ceil 向上取整 天花板函式 上入整數函式 ceil x 返回數字的上入整數,如math.ceil 4.1 返回 5 floor 向下取整 地板函式 下舍取整函式 floor x 返回數字的下舍整數...

開始學習python了

前一陣子一直在做個小遊戲引擎,基於directx7.0的,2d,物件導向.後來發現指令碼處理比較麻煩,想自己寫個指令碼處理吧,一來是沒時間,二來是沒這份功力 本人編譯就只學了點皮毛啊,真慚愧.後來聽說許多遊戲公司都不是用自己寫的指令碼引擎,而是使用一些指令碼語言,比如lua,ruby,python什...