軟件工程第一次做業

 

 

要求0:做業要求地址:https://edu.cnblogs.com/campus/nenu/2016CS/homework/2110python

要求1:git倉庫地址https://git.coding.net/wishsama/wf.gitgit

要求2:正則表達式

PSP階段 預計時間 實際時間
計劃 30 20
明確需求和其餘相關因素,估計每段時間成本 30 20
開發 300 400
需求分析 0 0
生成設計文檔 0 0
設計複審(和同窗審覈設計文檔) 0 0
代碼規範(爲目前的開發制定合適的規範 0 0
具體設計 0 0
具體編碼 300 400
代碼複審 0 0
測試(自測、修改代碼、提交修改) 20 30
報告 20 30
過後總結 20 30

 

 

用split函數和正則表達式分割字符串計算詞頻,用正則表達式判斷詞是否合法app

def processLine(line, wordCounts):
    words=[]
    words.extend(re.split('\W', line))
    for word in words:
        if isLegal(word):
            if word in wordCounts:
                wordCounts[word] += 1
            else:
                wordCounts[word] = 1
    return wordCounts


def isLegal(word):
    return re.match("^[a-zA-Z][a-zA-Z0-9]*$", word)

 

 

參數爲文件夾名時先獲得文件夾中txt文件名函數

def IsSubString(SubStrList, Str):

    flag = True
    for substr in SubStrList:
        if not (substr in Str):
            flag = False
    return flag


def GetFileList(FindPath, FlagStr=["txt"]):

    FileList = []
    FileNames = os.listdir(FindPath)
    if (len(FileNames) > 0):
        for fn in FileNames:
            if (len(FlagStr) > 0):
                # 返回指定類型的文件名
                if (IsSubString(FlagStr, fn)):
                    fullfilename = os.path.join(FindPath, fn)
                    FileList.append(fullfilename)
            else:
                # 默認直接返回全部文件名
                fullfilename = os.path.join(FindPath, fn)
                FileList.append(fullfilename)
    # 對文件名排序
    if (len(FileList) > 0):
        FileList.sort()

    return FileList

 

 

 argparse解析控制檯參數測試

    parser = argparse.ArgumentParser()
    parser.add_argument('-c', default="", help=help)
    parser.add_argument('-f', default="", help=help)
    parser.add_argument('-n', default="", help=help)
    args = parser.parse_args()

 

功能1:編碼

 

功能2:spa

 

功能3:.net

 

 心路歷程:設計

  據說python方便就用了,邊作邊學,學了些python的模塊。

相關文章
相關標籤/搜索