pythonsel函數 pythonelse語句

python中set()函數的用法

python中set()函數的用法如下:

創新互聯建站從2013年開始,先為工布江達等服務建站,工布江達等地企業,進行企業商務咨詢服務。為工布江達企業網站制作PC+手機+微官網三網同步一站式服務解決您的所有建站問題。

工具/原料:臺式電腦、Win10、Python3.6.5。

1、首先按下“Win+R”組合鍵,打開運行窗口,如下圖所示。

2、在打開文本框輸入“cmd”,點擊確定,如下圖所示。

3、在打開的cmd窗口中,輸入:“python”,點擊Enter鍵,如下圖所示。

4、在Python環境中,輸入:“x = set(('hi', 'hello', 'world'))”,點擊Enter鍵,如下圖所示。

5、在Python環境中,輸入:“print(x)”,如下圖所示。

6、點擊Enter鍵,即可使用Python內置的set()函數創建一個集合對象,并打印出來,如下圖所示。

Python里tkinter如何重置單選按鈕?

打開圖像時,使用單選按鈕注釋值。在

在列表中收集此值

因此,在這個例子中,我有2個復合詞,列表將有2個注釋。在

在import Tkinter as tk

from PIL import ImageTk, Image

from tkFileDialog import askopenfilename

cmp_list = ["VU435DR","VU684DR"]

li = []

li_final = []

def sel():

selection = str(var.get())

if selection == "1":

li.append("Antagonist")

elif selection == "2":

li.append("Agonist")

for i in range(len(cmp_list)):

root = tk.Tk()

var = tk.IntVar()

ig = str(cmp_list[i] + '.png')

img = ImageTk.PhotoImage(Image.open(ig))

panel = tk.Label(root,image=img)

panel.pack(side = "top",fill="none",expand="no")

#w = tk.Text(height=2,width=50)

#w.pack(side='right")

q = tk.Radiobutton(root,text="Antagonist",command=sel,value=1,variable=var)

q.pack()

r = tk.Radiobutton(root,text="Agonist",command=sel,value=2,variable=var)

r.pack()

root.mainloop()

print li

Python select里面的函數參數能不能變量傳送?

你自己都說了range是函數,函數當然能傳遞變量作為參數。

下圖是一個示例,作用是輸出1-10中的所有奇數。

使用python簡單封裝selenium常用函數

年前走查腳本代碼時,發現大家對selenium功能都在重復造輪子,而且容易出現一些常見低級bug。于是在閑暇之余,封裝一些常用的selenium功能。

在某些網頁中,存在多個frame嵌套。而selenium提供的find_element函數只能在當前frame中查找,不能切換到其他frame中,需要從最上級frame中逐步切換(當然也可以指定xpath的絕對路徑,但是一般沒人這么做)。在我們寫代碼過程中,需要明確知道當前frame位置和需要尋找元素的frame位置。在frame切換過程中,容易因為疏忽導致frame切換錯誤導致元素無法找到的bug。

頁面中分布的frame,可以理解為樹狀結構。因此我們可以采用遞歸的方式, 沿著某條搜索路線frame節點,依次對樹中每個節點均做一次訪問。

我們以163網址上的登錄框為例:點擊登錄按鈕,彈出登錄iframe頁面。輸入框位置在iframe中,因此我們不能使用xpath獲取元素位置,需要進入iframe中,然后獲取元素。

手動切換ifame可能會產生bug,因此需要一套自動切換和檢索frame的機制。具體代碼如下:

需要注意的是:如果頁面中多個frame中,存在相同的xpath元素。還是需要指定frame的路徑,否則會返回搜索到的第一個元素。

強制等待

直接調用系統time.sleep函數,不管頁面加載情況一定會等待指定的時間, 即使元素已被加載 。

1.如果設置的時間較長,會浪費時間

2.如果設置的時間較短,元素可能沒有加載。

頁面中某元素如果未能立即加載,隱式等待告訴WebDriver需等待一定的時間,然后去查找元素。默認不等待,隱式等待作用于整個WebDriver周期,只需設置一次即可。

1.在上文的find_element函數中,采用遞歸方式在所有frame尋找元素。若采用隱式等待,則在每個frame中都需要等待設定的時間,耗時非常長。

2.某些頁面我們想要的元素已經加載完畢,但是部分其他資源未加載。隱式等待必須等待所有元素加載完畢,增加額外等待時間。

顯示等待一般作用于某一個元素,在設定的時間范圍內,默認每間隔0.5秒查找元素。返回被加載的元素,若超過設定的時間范圍未能查找則報錯。顯示等待作為selenium常用的等待機制,我們來看下他的源碼和機制。

driver 注釋中解釋為WebDriver實例,但是代碼中并未有相關檢測,因此可以傳入任何對象

但是__repr__函數中使用到session_id屬性,如果需要顯示屬性或者轉為str對象,最好在driver對象中添加session_id屬性

在until函數中,我們可以看到driver對象傳入method函數。在計時結束前,在不斷循環執行method函數,如果method函數有正常返回值則退出循環,否則報TimeoutException錯誤。

可以采用裝飾器對隱式等待進行封裝,這樣代碼更加精簡

同樣的,采用裝飾器對其他常用的函數進行封裝,例如強制等待、點擊、輸入文本等。

裝飾器雖然很方便,但也會產生一些麻煩。例如在find_element函數遞歸調用過程中,理應只要執行一次裝飾器函數。但因為裝飾器已經裝飾完畢,導致每次遞歸都會執行。例如強制等待的sleep函數,如果遞歸次數越多等待時間越長。

解除裝飾器一般有兩種做法:一是約定參數,當遞歸第二次調用時則不生效。例如

這種方式實現簡單,容易理解。但是增加了參數限制,在fun函數中就不能使用first_sleep參數。

二是采用裝飾器采用wrapped實現,通過訪問wrapped屬性獲得原始函數。例如

但是某一個函數被多個裝飾器裝飾時,需要遞歸解除裝飾器。例如

最后整體代碼如下

這次的封裝其實還存在很多問題

1.find_element函數不僅僅只是提供查找元素功能,還提供一些其他功能,因此叫element_operation更為合適。

2.find_element函數的參數過多,并且很多參數的使用并不在函數本身中,對代碼閱讀很不友好。

3.得小心避免參數重復問題,假設裝飾器sleep和裝飾器wait_time都使用time這個參數,將無法區分具體是哪個函數使用。

4.不利于擴展和維護,當功能過多時find_element的參數過于龐大。

如果只是簡單地封裝和使用,上面這種方式也能達到較好的效果。如果想進一步封裝,建議采用鏈式調用方式,裝飾器輔助封裝。例如

這樣函數的擴展性和可閱讀性有較大的提升

分享名稱:pythonsel函數 pythonelse語句
文章出自:http://m.kartarina.com/article0/dodssio.html

成都網站建設公司_創新互聯,為您提供網站維護、移動網站建設、小程序開發網站排名、網站建設、虛擬主機

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

h5響應式網站建設
主站蜘蛛池模板: 无码乱人伦一区二区亚洲一| 日韩精品中文字幕无码一区| 精品多人p群无码| 亚洲AV无码久久久久网站蜜桃 | 国精品无码一区二区三区在线蜜臀| 免费看成人AA片无码视频吃奶| 久久久久亚洲Av无码专| 无码人妻AⅤ一区二区三区水密桃 无码欧精品亚洲日韩一区夜夜嗨 无码免费又爽又高潮喷水的视频 无码毛片一区二区三区中文字幕 无码毛片一区二区三区视频免费播放 | 十八禁无码免费网站| 亚洲熟妇av午夜无码不卡| a级毛片无码免费真人久久 | 一本无码中文字幕在线观| 亚洲a∨无码一区二区| 未满小14洗澡无码视频网站| 亚洲AV永久无码精品一区二区国产| 日韩午夜福利无码专区a| 亚洲欧洲精品无码AV| 日韩视频无码日韩视频又2021| 无码一区二区三区爆白浆| 久久水蜜桃亚洲av无码精品麻豆| 国产亚洲?V无码?V男人的天堂 | 无码中文av有码中文av| 久久精品无码专区免费青青| 国产午夜片无码区在线播放| 亚洲av无码专区在线观看素人| 国产怡春院无码一区二区| 亚洲AV无码一区二区三区人| 久久久久无码国产精品一区| 中文字幕无码第1页| 国产成人无码A区在线观看视频 | 亚洲AV无码AV男人的天堂不卡| 无码囯产精品一区二区免费| 久久无码专区国产精品s| 亚洲熟妇无码AV在线播放| 高潮潮喷奶水飞溅视频无码| 亚洲高清无码专区视频| 无码日韩精品一区二区人妻| 亚洲精品无码mv在线观看网站| 高清无码一区二区在线观看吞精 | 亚洲欧洲精品无码AV| 亚洲午夜福利AV一区二区无码|