試卷征集
          加入會員
          操作視頻
          當前位置: 試卷中心 > 試卷詳情

          浙教版(2019)必修1《第三章 算法的程序實現》2022年單元測試卷(5)

          發布:2024/4/23 12:26:7

          一、選擇題

          • 1.查找與替換。從鍵盤上分別輸入要查找和替換的字符串,對文本文件進行查找與替換,替換后保存到新的文本文件中。完成查找與替換功能的思路是:首先可從待檢索文本文件“in.jye.ai”逐行讀取文本內容到列表text,然后從鍵盤上輸入查找的字符串key和替換的字符串new,對列表text中的元素逐個進行查找并替換,結果保存到列表result,最后將result 寫入文件“out.jye.ai”。
            (1)主程序。
            text=readfile(“in.jye.ai“)#讀入文件
            key=input(“請輸入要查找的字符串:“)
            new=input(“請輸入要替換的字符串:“)
            result=[]
            for line in text:
            newline=replace(key,new,line)#替換
            result.append(newline)#添加到列表
            writefile(“out.jye.ai“,result)#寫入文件
            該程序段采用的算法是
             
            (單選,填字母:A.解析算法/B.枚舉算法)。
            (2)讀寫文本文件,如下的readfile函數,逐行讀取文本文件數據存入列表并返回。請在橫線處填入合適的代碼。
            def readfile(filename):
            f=open(filename,encoding=“utf-8“)#打開文件
            text=[]
            line=f.readline(  )#從文件中讀取一行
            while line:
            text.jye.ai(line)#添加到列表
            line=f.readline(  )
            f.jye.ai(  )
            return    
            def writefile(filename,text):
            #將text寫入filename文件,代碼略
            (3)查找字符串,如下的findstr函數,在字符串line中從begin位置開始查找key在字符串line中的位置,請在橫線處填入合適的代碼。
            def findstr(key,line,begin):
            for i in range(begin,len(line)-len(key)+1):
            if         
            return i
            return-1
            (4)替換字符串。如下的replace函數,在字符串line中檢索所有的字符串key并替換為new,請在橫線處填入合適的代碼。
            def replace(key,new,line):
            begin=0
            while begin<len(line)-len(key)+1:
            pos=findstr(key,line,begin)
            if pos==-1:
                      
            else:
            line=line[0:pos]+new+line[pos+len(key):len(line)]
            begin=pos+len(key)
            return line

            組卷:0引用:2難度:0.3
          APP開發者:深圳市菁優智慧教育股份有限公司| 應用名稱:菁優網 | 應用版本:5.0.7 |隱私協議|第三方SDK|用戶服務條款
          本網部分資源來源于會員上傳,除本網組織的資源外,版權歸原作者所有,如有侵犯版權,請立刻和本網聯系并提供證據,本網將在三個工作日內改正