Time of Update: 2017-01-19
在昨天關於substring的blog中有如下一段代碼:也許你已經發現,在Python 3中其實有辦法只用一行完成函數:複製代碼 代碼如下:>>> def isSubstring2(s1,s2): return True if s2.find(s1)!=-1 else False但是。。。還可以更簡單嗎?如何更簡單使用Python表達條件陳述式呢,just for fun :)一種做法是使用清單索引:複製代碼 代碼如下:>>> def
Time of Update: 2017-01-19
前兩天剛裝了python 3.1.1, 禁不住技癢寫點code。1.選擇排序複製代碼 代碼如下:>>> def SelSort(L): length=len(L) for i in range(length-1): minIdx=i
Time of Update: 2017-01-19
慚愧啊,今天寫了個尋找子串的Python程式被BS了…如果讓你寫一個程式檢查字串s2中是不是包含有s1。也許你會很直觀的寫下下面的代碼:複製代碼 代碼如下:#determine whether s1 is a substring of s2 def isSubstring1(s1,s2): tag = False len1 = len(s1) len2 = len(s2)
Time of Update: 2017-01-19
“Django應用、設定檔以及其他各種相關目錄的最佳布局是什麼樣的?”總是有朋友問我們這個問題,因此我想花一點時間,寫一下我們究竟是如何看待這個問題的,這樣我們就可以很容易讓其他人蔘照這個文檔。請注意,這裡是基於 Django 1.7.1 版寫的,但是可以很容易應用在 Django 1.4 版之後任何版本。雖然 Django 1.4 發布時,它包含了一個改進後的項目布局(這還用了很長一段時間),但本文有一些最佳化項目布局的更好建議。為什麼這種布局比較好我們在這裡推薦項目布局有幾個優點,即: &
Time of Update: 2017-01-19
join 方法:阻塞線程 , 直到該線程執行完畢因此 ,可以對join加一個逾時操作 , join([timeout]),超過設定時間,就不再阻塞線程jion加上還有一個後果就是, 子線程和主線程綁定在一起 , 直到子線程運行完畢,才開始執行子線程。代碼 有join:在CODE上查看代碼片派生到My Code片 #-*- coding: UTF-8 -*- import threading from time import sleep def
Time of Update: 2017-01-19
flask中的sqlalchemy 相比於sqlalchemy封裝的更加徹底一些 , 在一些方法上更簡單首先import類庫:在CODE上查看代碼片派生到My Code片 <span style="font-size:18px;">from flask import Flask from flask.ext.sqlalchemy import SQLAlchemy</span> 然後,需要載入 資料庫路徑在CODE上查看代碼片派生到My Code片
Time of Update: 2017-01-19
#! -*- coding:utf-8 -*- import string s = 'Yes! This is a string' print '原字串:' + s print '小寫:' + s.lower() print '大寫:' + s.upper() print '大小寫轉換:' + s.swapcase() print '首字母大寫:' + s.capitalize() print '每個單字首大寫:' + s.title()
Time of Update: 2017-01-19
先看下object類中對__new__()方法的定義: class object: @staticmethod # known case of __new__ def __new__(cls, *more): # known special case of object.__new__ """ T.__new__(S, ...) -> a new object with type S, a subtype of T """ pass
Time of Update: 2017-01-19
for 迴圈本系列前面 “探索 Python,第 5 部分:用 Python 編程” 一文討論了 if 語句和 while 迴圈,討論了複合陳述式以及適當縮排 Python 語句來指示相關 Python 代碼塊。該文的結尾介紹了 Python for 迴圈。但就其使用和功能來說,for 迴圈更值得關注,所以本文單獨講述該迴圈。for 迴圈有一個簡單的文法,使您可以從容器物件中提取單個項目並對其進行某些操作。簡單地說,使用 for 迴圈,可以迭代中對象集合的項目。對象集合可以是任何 Python
Time of Update: 2017-01-19
join用來連接字串,split恰好相反,拆分字串的。不用多解釋,看完代碼,其意自現了。複製代碼 代碼如下:>>>li = ['my','name','is','bob']>>>' '.join(li)'my name is bob'>>>s = '_'.join(li)>>>s'my_name_is_bob'>>>s.split('_')['my', 'name', 'is',
Time of Update: 2017-01-19
1. 如果模組是被匯入,__name__的值為模組名字2. 如果模組是被直接執行,__name__的值為'__main__'Py1.py複製代碼 代碼如下:#!/usr/bin/env pythondef test(): print '__name__ = ',__name__if __name__ == '__main__': test()Py2.py複製代碼 代碼如下:#!/usr/bin/env pythonimport Py1.py def test():&
Time of Update: 2017-01-19
Python list在介紹 Python tuple 時,我使用了類比的方法,將其比做一個袋子,您可以在袋子中存放不同的東西。Python list 與此非常類似,因此,它的功能與袋子的功能也非常類似。但有一點是不同的,即您可以使用方括弧建立 list,如清單 1 所示。清單 1. 在 Python 中建立一個 list>>> l = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]>>> l[0, 1, 2, 3, 4, 5, 6, 7, 8,
Time of Update: 2017-01-19
引用是指儲存的值為對象的地址。在 Python 語言中,一個變數儲存的值除了基本類型儲存的是值外,其它都是引用,因此對於它們的使用就需要小心一些。下面舉個例子:問題描述:已知一個列表,求產生一個新的列表,列表元素是原列表的複製複製代碼 代碼如下:a=[1,2]b=a這種做法其實並未真正產生一個新的列表,b指向的仍然是a所指向的對象。這樣,如果對a或b的元素進行修改,a,b的值同時發生變化。解決的方法為:複製代碼 代碼如下:a=[1,2]b=a[:]這樣修改a對b沒有影響。修改b對a沒有影響。但
Time of Update: 2017-01-19
字串在 Python 中建立字串對象非常容易。只要將所需的文本放入一對引號中,就完成了一個新字串的建立(參見清單 1)。如果稍加思考的話,您可能會感到有些困惑。畢竟,有兩類可以使用的引號:單引號 (') 和雙引號 (")。幸運的是,Python 再一次使這種問題迎刃而解。您可以使用任意一類引號來表示 Python 中的字串,只要引號一致就行。如果字串是以單引號開始,那麼必須以單引號結束,反之亦然。如果不遵循這一規則,則會出現 SyntaxError 異常。清單 1. 在 Python
Time of Update: 2017-01-19
1.命令介紹最近學習並使用了一個python的內建函數dir,首先help一下:複製代碼 代碼如下:>>> help(dir)Help on built-in function dir in module __builtin__:dir() dir([object]) -> list of strings Return an alphabetized list of names comprising
Time of Update: 2017-01-19
簡單類型內建到 Python 程式設計語言中的單一資料型別包括: bool int float complex支援單一資料型別不是 Python 專屬的功能,因為多數現代程式設計語言都具有完整類型補充。例如 Java? 語言甚至有一組更豐富的未經處理資料類型: byte
Time of Update: 2017-01-19
isinstance(object, classinfo)判斷執行個體是否是這個類或者objectobject是變數 classinfo 是類型(tuple,dict,int,float) 判斷變數是否是這個類型 複製代碼 代碼如下: class objA: pass A = objA() B = 'a','v' C
Time of Update: 2017-01-19
python中with可以明顯改進代碼友好度,比如:複製代碼 代碼如下:with open('a.txt') as f: print f.readlines() 為了我們自己的類也可以使用with, 只要給這個類增加兩個函數__enter__, __exit__即可:複製代碼 代碼如下:>>> class A: def __enter__(self): &
Time of Update: 2017-01-19
dictionary我們都曾經使用過語言詞典來尋找不認識的單詞的定義。語言詞典針對給定的單詞(比如 python)提供一組標準的資訊。這種系統將定義和其他資訊與實際的單詞關聯(映射)起來。使用單詞作為鍵定位器來尋找感興趣的資訊。這種概念延伸到 Python 程式設計語言中,就成了特殊的容器類型,稱為 dictionary。dictionary 資料類型在許多語言中都存在。它有時候稱為關聯 數組(因為資料與一個索引值相關聯),或者作為散列表。但是在 Python 中,dictionary
Time of Update: 2017-01-19
在我以前介紹 Python 2.4 特性的Blog中已經介紹過了decorator了,不過,那時是照貓畫虎,現在再仔細描述一下它的使用。關於decorator的詳細介紹在 Python 2.4中的What's new中已經有介紹,大家可以看一下。如何調用decorator基本上調用decorator有兩種形式第一種:複製代碼 代碼如下:@Adef f ():這種形式是decorator不帶參數的寫法。最終 Python 會處理為:複製代碼 代碼如下:f = A(f)還可以擴充成:複製代碼