keras版本的Mask-RCNN裡的相關的python函式解釋
1、next()方法
概述:next()方法在檔案迭代器時使用到,在迴圈中,next()方法會在每次迴圈中呼叫,改方法返回檔案的下一行,如果達到結尾(EOF),則會觸發StopIteration ,這裡是相當於這個類裡面有next()方法。
例子,假如在檔案runboot.txt的內容如下
這是第一行這是第二行這是第三行這是第四行這是第五行
則迴圈讀取檔案的內容:
#-*- coding:UTF-8 -*- #開啟檔案 fo=open("runboot.txt","rw+") print "檔名為:", fo.name for index in range(5): line=fo.next() print "第%d 行 -%s"%(index,line) fo.close()
2、另一個則是next()函式
描述:next()返回迭代器的下一個專案
例項:
以下例項展示了 next 的使用方法:
#!/usr/bin/python
# -*- coding: UTF-8 -*-
# 首先獲得Iterator物件:
it = iter([1, 2, 3, 4, 5])
# 迴圈:
while True:
try:
# 獲得下一個值:
x = next(it)
print(x)
except StopIteration:
# 遇到StopIteration就退出迴圈
break
2、Python of.walk()方法
概述:
os.walk()方法用於通過在目錄樹中游走輸出在目錄中的檔名,向上或者向下。方法是一個簡單易用的檔案、目錄遍歷器,可以幫助我們高效的處理檔案、目錄方面的事情。
os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])
引數:
top -- 是你所要遍歷的目錄的地址, 返回的是一個三元組(root,dirs,files)。
- root 所指的是當前正在遍歷的這個資料夾的本身的地址
- dirs 是一個 list ,內容是該資料夾中所有的目錄的名字(不包括子目錄)
- files 同樣是 list , 內容是該資料夾中所有的檔案(不包括子目錄)
topdown --可選,為 True,則優先遍歷 top 目錄,否則優先遍歷 top 的子目錄(預設為開啟)。如果 topdown 引數為 True,walk 會遍歷top資料夾,與top 資料夾中每一個子目錄。
onerror -- 可選, 需要一個 callable 物件,當 walk 需要異常時,會呼叫。
followlinks -- 可選, 如果為 True,則會遍歷目錄下的快捷方式(linux 下是 symbolic link)實際所指的目錄(預設關閉)。
例子:
# Directory of images to run detection on
IMAGE_DIR = os.path.join(ROOT_DIR, "images")
# Load a random image from the images folder
file_names = next(os.walk(IMAGE_DIR))[2]
image = skimage.io.imread(os.path.join(IMAGE_DIR, random.choice(file_names)))
很好的例子,就是:os.walk(person_dir)返回的結果就是一個元組,其中裡面包含很多元素。其很好的例子:
3、pytho裡的“*”跟“**”號的使用:
其分別是乘跟進行指數計算,代表著最前的那個數的指數。
4、yaml格式檔案檔案儲存跟檔案讀取。
yaml格式讀取一般使用load,但是其對應的檔案開啟有幾種方式,其中一種是open,另一種是file
其中使用open函式開啟的方法為:
import yaml
f = open('login.yaml', encoding='utf-8')
res = yaml.load(f)
print(res)
使用file函式開啟:
import yaml
# 不過無法找到file對應的模組
f = file('login.yaml', 'r')
res = yaml.load(f)
print(res)