Time of Update: 2017-01-13
在瞭解Python的資料結構時,容器(container)、可迭代對象(iterable)、迭代器(iterator)、產生器(generator)、列表/集合/字典推導式(list,set,dict comprehension)眾多概念參雜在一起,難免讓初學者一頭霧水,我將用一篇文章試圖將這些概念以及它們之間的關係清楚。relations容器(container)容器是一種把多個元素組織在一起的資料結構,容器中的元素可以逐個地迭代擷取,可以用in, not in關鍵字判斷元素是否包含在容器中。
Time of Update: 2017-01-13
列表格式:name = []name = [name1, name2, name3, name4, name5]#針對列表的操作name.index("name1")#查詢指定數值的下標值name.count("name1")#查詢指定數值的總數name.clear("name")#清空列表name.reverse("name")#反轉列表數值name.sort("name")#排序,優先順序
Time of Update: 2017-01-13
為了爬模數特的圖片,我們首先要找到各個模特自己的頁面。通過查看網頁源碼,我們可以發現,模特各自的頁面的特點如下:我們可以通過尋找class屬性為lady-name的標籤,然後取其href屬性來擷取各個模特各自的頁面地址。1 html = urlopen(url)2 bs = BeautifulSoup(html.read().decode('gbk'),"html.parser")3 girls = bs.findAll("a",{"class&
Time of Update: 2017-01-13
下面一段代碼開始說起,知乎上有人問這個問題,說代碼看不懂。 #coding:utf-8 #書中一個例子簡單的短期利率類,折現是金融學中最基本的概念之一,在連續折現的固定短期利率世界中,日期t>0時未來現金流與當前日期t=0之間的折現因子為Do(t)=e(-rt)次方 import numpy as np class
Time of Update: 2017-01-13
概述資深Python工程師可以選擇的編輯器有很多,比如 Rodeo , Spider ,Eclipse,Vim,Visual Studio,Atom,Sublime Text,Jupyter等等,但是現在為什麼現在很多資深的 Pythoner 都開始擁抱 RStudio
Time of Update: 2017-01-13
注釋單行注釋 #多行注釋 ''' 三個單引號或者三個雙引號 """''' 用三引號引住可以多行賦值使用者互動 input字串拼接+ ""%() "".format()推薦使用name = input("name:")age = int(input("age:"))sex = input("sex:")例:+# 字串拼接+info1 =
Time of Update: 2017-01-13
在python中,變數尋找遵循LGB原則,即優先在局部範圍(local scope)中對變數進行尋找,失敗則在全域範圍(global scope)中進行尋找,最後嘗試再內建範圍(build-in scope)內尋找,如果還是未找到的話,則拋出異常。後來由於閉包和嵌套函數的出現,範圍又增加了外部範圍,這樣變數的尋找範圍優先順序變為:局部、外部、全域和內建。 範圍由def、class、lambda等語句產生,if、try、for等語句並不會產生新的範圍。我們看下面的一個例子:
Time of Update: 2017-01-13
先看代碼:nginx日誌監控指令碼Python#!/usr/bin/python2.6#coding=utf-8import osimport time#日誌記錄num_file = '/data/www/www.111cn.net/log/num'log_file = '/data/www/www.111cn.net/log/www.111cn.net.log'#ip屏蔽函數def shellcmd(ip,con):
Time of Update: 2017-01-13
雖然是用python實現的,其實可以是任何服務端指令碼。svn的鉤子功能非常的好用,git也是可以實現鉤子功能,只不過因為其實分布式的特徵,我們如果想讓某個伺服器更新提交代碼,我們通過遠程庫通知目標伺服器,目標伺服器接到通知,執行git pull即可。第一種實現:這種方式是使用中間檔案,兩種指令碼實現的1、首先,一般的遠程版本庫,我使用的github,都是有個webhooks功能,github就在版本庫的設定選項中,他可以設定一個Payload
Time of Update: 2017-01-13
隨機數產生>>> import random #匯入Python內建的隨機模組>>> num = random.randint(1,1000) #產生1-1000之間的偽隨機數讀檔案>>> f = open("c:1.txt","r")>>> lines = f.readlines() #讀出所有內容給變數 f>>> for line in
Time of Update: 2017-01-13
在登入很多網站的時候,他們已經不在使用簡單的英文和數位驗證碼,為了防止噁心註冊和群發軟體的侵襲,現在都開始使用中文的驗證碼了。今天我們就跟大家分享一段用Python產生隨機的中文驗證碼圖片原始碼。 代碼如下複製代碼 # -*- coding: utf-8 -*-import Image,ImageDraw,ImageFontimport randomimport math, string class RandomChar(): "&
Time of Update: 2017-01-13
Python寫的比較2個檔案不同的程式,如果其中有1個檔案不同,就會返回第一個不同的地方的行號和列號。下面給出比較檔案的Python原始碼: 代碼如下複製代碼 # 用Python比較兩個檔案# 如果相同返回0def cmpstr(str1, str2): col = 0 for c1, c2 in zip(str1,
Time of Update: 2017-01-13
檔案1,選號程式,xh.py 代碼如下複製代碼 # 檔案1 xh.pyimport randomdef getResultStr(totalCount, resultCount): elements = [x + 1 for x in range(totalCount)] retStr = '' for i in
Time of Update: 2017-01-13
這個Python自訂函數的功能是計算過去了多少個周末。參數說明:d1表示過去的日期,d2表示現在的日期傳回值是時間差周末的個數#Python代碼 代碼如下複製代碼 def weekends_between(d1, d2): days_between = (d2-d1).days weekends, leftover = divmod(days_between,7)
Time of Update: 2017-01-13
這裡我們分享,如何在Windows7 64位系統 平台下安裝Python程式 : 第一步:登陸並下載程式登陸Python官方網站 https:\\www.python.org\可以看到有兩個版本,這裡我選擇Python 2.7.9第二步:安裝程式將下載好的MSI程式,雙擊程式進行安裝,安裝到電腦所有使用者選擇程式安裝路徑 c:\python27\下安裝Python功能查看安裝進度點擊Finish完成安裝第三步:配置環境變數控制台\所有控制台項\系統
Time of Update: 2017-01-13
前幾天,在做品質度量平台時(Python架構Django開發),跨域調用的問題,我前面有一個做法是,在本地server中增加一個API,這個API的功能是遠程請求一個API並解析資料,這樣瀏覽器訪問本系統時只需要調用同網域名稱下新增加的這個API即可,不存在跨域問題。不過,這次我想直接在AngularJS中調用跨域的遠程API。解決跨域問題,有兩個方法:1.使用jsonp
Time of Update: 2017-01-13
Fibonacci斐波那契數列,很簡單,就是一個遞迴嘛,學任何程式設計語言可能都會做一下這個。這次在,python中也不例外,最基本的那種遞迴(如下fib1)效率太低了,只要n數字大了運算時間就會很長;而通過將計算的指儲存到一個dict中,後面計算時直接拿來使用,這種方式成為備忘(memo),如下面的fib2函數所示,則會發現效率大大提高。在n=10以內時,fib1和fab2已耗用時間都很短看不出差異,但當n=40時,就太明顯了,fib1運行花了35秒,fab2運行只花費了0.00001秒。n=
Time of Update: 2017-01-13
我將資料庫連接相關的一些使用者名稱/密碼/host/port等各種東西作為一個string儲存在了資料庫中,我要用MySQLdb檢查這些資料庫連接資訊是夠能正常使用,需要將資料庫資訊中的使用者名稱/密碼/host/port等資訊作為參數傳給MySQLdb.Connect()。這就需要將'{“host”:”192.168.11.22″, “port”:3306,
Time of Update: 2017-01-13
在windows上安裝python mysql模組後,匯入模組時報 python ImportError: DLL load failed: %1 不是有效 Win32 應用程式這個是因為你安裝了64位的python,然後安裝32位的mysql模組,或者你安裝了32位的python,然後安裝64位的myql模組怎麼查看自己的python是多少位? 代碼如下複製代碼 C:Usersivon>pythonPython 2.7.6 (default, Nov 10 2013,
Time of Update: 2017-01-13
#建立一個檔案 register.py 內容如下. 然後執行該指令碼 代碼如下複製代碼 import sysfrom _winreg import *# tweak as necessaryversion = sys.version[:3]installpath = sys.prefixregpath = "SOFTWARE\Python\Pythoncore\%s\" % (version)installkey =