一、利用遞歸實作階乘執行個體
<code>#利用遞歸實作階乘執行個體(實際就是函數調用函數)</code>
<code>#實作 1*2*3*4*5*6*7*8*9</code>
<code>def</code> <code>func(num):</code>
<code> </code><code>if</code> <code>num </code><code>=</code><code>=</code> <code>1</code><code>:</code>
<code> </code><code>return</code> <code>1</code>
<code> </code><code>return</code> <code>num </code><code>*</code> <code>func(num </code><code>-</code> <code>1</code><code>)</code>
<code>a </code><code>=</code> <code>func(</code><code>9</code><code>)</code>
<code>print</code> <code>(a)</code>
<code>#輸出:362880</code>
二、反射
<code>#反射:(利用字元串的形式去對象(或子產品)中操作(尋找/檢查/删除/設定)成員。)</code>
<code>'''</code>
<code>#例1:</code>
<code>#如一個web架構的路由系統</code>
<code>#定義一個commons.py的子產品</code>
<code>def login():</code>
<code> </code><code>print("登入頁面")</code>
<code>def logout():</code>
<code> </code><code>print("退出頁面")</code>
<code>def home():</code>
<code> </code><code>print("首頁面")</code>
<code>#定義一個index.py的為主運作程式</code>
<code>import commons</code>
<code>def run():</code>
<code> </code><code>in1 = input("請輸入通路的url:")</code>
<code> </code><code>if in1 == 'login':</code>
<code> </code><code>commons.login()</code>
<code> </code><code>elif in1 == 'logout':</code>
<code> </code><code>commons.logout()</code>
<code> </code><code>elif in1 == 'home':</code>
<code> </code><code>commons.home()</code>
<code> </code><code>else:</code>
<code> </code><code>print("404")</code>
<code>#内置函數getattr()</code>
<code>1.getattr() #擷取它的屬性(也稱成員)</code>
<code>例如:</code>
<code>getattr(commons,"login")</code>
<code>#去commons子產品中尋找它的成員login</code>
<code>#以例1的案例更改後如下:</code>
<code>#1.getattr()</code>
<code> </code><code>def run():</code>
<code> </code><code>in1 = input("請輸入通路的url:")</code>
<code> </code><code>func = getattr(commons,in1)</code>
<code> </code><code>func()</code>
<code>2.hasattr()</code>
<code> </code><code>hasattr(commons,"login")</code>
<code> </code><code>#查找commons裡邊有沒有login;有傳回True,沒有則傳回False</code>
<code>##python 有兩個web子產品:Tornado和Django</code>
<code>#2.hasattr()</code>
<code> </code><code>if hasattr(commons,in1):</code>
<code> </code><code>func = getattr(commons,in1)</code>
<code> </code><code>func()</code>
<code>3.delattr() #在子產品中删除某個成員</code>
<code>4.setattr() #在子產品中再設定某個成員</code>
<code>5.__import__() #以字元串的形式導入子產品</code>
<code> </code><code>例如1:</code>
<code> </code><code>import commons as obj #此處commons是子產品名</code>
<code> </code><code>obj.login() #執行obj裡邊的login函數,也就是執行commons裡邊的login函數</code>
<code> </code><code>例如2:(和例1功能相等,導入寫法不一)</code>
<code> </code><code>obj = __import__("commons") #此處commons是字元串</code>
<code> </code><code>obj.login()</code>
<code>#__import__() #以字元串的形式導入子產品</code>
<code> </code><code>in1 = input("請輸入通路的url(commons/login):")</code>
<code> </code><code>m,f = in1.split("/")</code>
<code> </code><code>obj = __import__(m)</code>
<code> </code><code>if hasattr(obj,f):</code>
<code> </code><code>func = getattr(obj,f)</code>
<code>6.當導入别的檔案夾子產品的時候</code>
<code> </code><code>例如:</code>
<code> </code><code>目錄為:</code>
<code> </code><code>day6</code>
<code> </code><code>lib</code>
<code> </code><code>account.py</code>
<code> </code><code>text.py</code>
<code> </code><code>導入方法:</code>
<code> </code><code>m,f = in1.split("/")</code>
<code> </code><code>obj = __import__('lib.'+m, fromlist=True)</code>
<code> </code><code>#fromlist=True 代表告訴是以字元串拼接的方式</code>
<code> </code><code>#如果不加,隻導入lib.之前的子產品lib</code>
<code>#執行個體:僞造web架構的路由系統</code>
<code> </code><code>(路由系統:通路某一個url 就給定義到某個函數上)</code>
<code>反射總結:</code>
<code> </code><code>1.反射:</code>
<code> </code><code>基于字元串的形式去對象(子產品)中操作(尋找/檢查/删除/設定)其成員。</code>
<code> </code><code>2.反射功能(接口):</code>
<code> </code><code>是由python提供;</code>
<code> </code><code>4個功能:getattr()、delattr()、setattr()、hasattr()</code>
<code> </code><code>3.擴充:</code>
<code> </code><code>導入子產品</code>
<code> </code><code>import 子產品名</code>
<code> </code><code>from xxx import 子產品名</code>
<code> </code><code>導入别的檔案夾子產品</code>
<code> </code><code>obj = __import__("xxx")</code>
<code> </code><code>#xxx是字元串</code>
<code> </code><code>obj = __import__("xxx."+xx,fromlist=True)</code>
<code> </code><code>#xxx是字元串、xx是一個變量也是一個字元串;</code>
<code> </code><code>#fromlist=True 告訴前邊是以字元串拼接的方式</code>
三、子產品中的特殊變量
<code>1.__doc__</code> <code>功能:将.py檔案的注釋自動封裝到__doc__裡邊</code>
<code> </code><code>(注釋:在.py檔案開頭用</code><code>''' '''</code><code>表示的内容)</code>
<code> </code><code>例如:</code>
<code> </code><code>"""</code>
<code> </code><code>我是一個兵</code>
<code> </code><code>print</code> <code>(__doc__)</code>
<code>2.__cached__</code> <code>功能:顯示位元組碼檔案路徑在哪裡(也就是存放的位置)</code>
<code> </code><code>(在運作.py檔案的時候會生成.pyc檔案是位元組碼檔案)</code>
<code>3.__file__</code> <code>功能:檢視目前.py檔案的檔案名</code>
<code> </code><code>1.print</code> <code>(__file__)</code>
<code> </code><code>2.</code><code>檢視絕對路徑</code>
<code> </code><code>import</code> <code>os</code>
<code> </code><code>os.path.abcpath() 擷取某個檔案的絕對路徑</code>
<code> </code><code>例:</code>
<code> </code><code>os.path.abspath(__file__)</code>
<code> </code><code>#檢視目前檔案的絕對路徑</code>
<code> </code><code>3.</code><code>檢視目前目錄的上級目錄</code>
<code> </code><code>r1 </code><code>=</code> <code>os.path.dirname(os.path.abcpath(__file__))</code>
<code> </code><code>print</code> <code>(r1)</code>
<code> </code><code>4.</code><code>檢視目前目錄的上上級目錄</code>
<code> </code><code>r2 </code><code>=</code> <code>os.path.dirname(os.path.dirname(os.path.dirname(__file__)))</code>
<code> </code><code>print</code> <code>(r2)</code>
<code> </code><code>将目錄加載到python系統目錄裡:</code>
<code> </code><code>import</code> <code>sys</code>
<code> </code><code>sys.path.append(os.path.dirname(os.path.dirname(os.path.dirname(__file__))))</code>
<code> </code><code>#這樣目錄永遠加到了python系統目錄裡,以後當設計到bin目錄都要加這行。</code>
<code>4.__package__</code> <code>功能:檢視目前所在包的名稱。</code>
<code> </code><code>1.</code><code>當在目前目錄下執行,放回</code><code>None</code><code>;</code>
<code> </code><code>print</code><code>(__package__)</code>
<code> </code><code>2.</code><code>當導入别的子產品時,執行就傳回子產品所在的檔案夾:</code>
<code> </code><code>import</code> <code>commons </code><code>from</code> <code>login</code>
<code> </code><code>print</code> <code>(login,__package__)</code>
<code>5.__name__</code> <code>功能:執行某.py檔案時,那麼__name__就等于__main__</code>
<code> </code><code>隻有執行目前檔案時,目前檔案的特殊變量__name__ </code><code>=</code><code>=</code> <code>"__main__"</code>
<code> </code><code>正式由于這種特性,是以在主運作檔案裡加上:</code>
<code> </code><code>if</code> <code>__name__ </code><code>=</code><code>=</code> <code>"__main__"</code><code>:</code>
四、python子產品sys
<code>#sys(python解釋器相關的内容都在裡邊)</code>
<code>1.sys</code><code>.argv 執行腳本傳參數,輸出</code><code>list</code><code>;第一個元素就是腳本本身aa.py</code>
<code>2.sys</code><code>.exit(n) 退出程式,n是退出時螢幕列印的内容</code>
<code>3.sys</code><code>.version() 擷取python解釋器的版本</code>
<code>4.sys</code><code>.path 傳回子產品的搜尋路徑,初始時使用python的環境變量值</code>
<code>5.sys</code><code>.platform 傳回作業系統的平台</code>
<code>6.sys</code><code>.stdin: 輸入相關</code>
<code>7.sys</code><code>.stdout: 輸出相關</code>
<code> </code><code>sys.stdout.flush() 輸出清空</code>
<code> </code><code>sys.stdout.write(r) 輸出不加換行符</code>
<code> </code><code>print</code> <code>(r) 輸出自動加換行符</code>
<code>8.sys</code><code>.stderr:錯誤相關</code>
<code>9.</code><code>\r 回到目前行的首位置</code>
<code> </code><code>r </code><code>=</code> <code>'%d%%'</code> <code>%</code><code>(num) </code><code>#num是一個可周遊的變量</code>
<code> </code><code>輸出:</code><code>1</code><code>%</code><code>2</code><code>%</code><code>3</code><code>%</code><code>...</code><code>100</code><code>%</code>
<code> </code><code>加了\r之後:</code>
<code> </code><code>r </code><code>=</code> <code>'\r%d%%'</code> <code>%</code><code>(num) </code><code>#num是一個可周遊的變量</code>
<code> </code><code>輸出:</code><code>2</code><code>%</code><code>會把</code><code>1</code><code>%</code><code>覆寫,</code><code>3</code><code>%</code><code>會把</code><code>2</code><code>%</code><code>覆寫,最後是</code><code>100</code><code>%</code>
<code> </code>
<code>#進度條案例</code>
<code>import</code> <code>sys</code>
<code>import</code> <code>time</code>
<code>def</code> <code>jindutiao(num,total):</code>
<code> </code><code>r </code><code>=</code> <code>num </code><code>/</code> <code>total</code>
<code> </code><code>r1 </code><code>=</code> <code>int</code><code>(r</code><code>*</code><code>100</code><code>)</code>
<code> </code><code>#result = '%d%%' %(r1) #沒有格式化輸出</code>
<code> </code><code>result </code><code>=</code> <code>'\r%s>%d%%'</code> <code>%</code><code>(</code><code>"="</code><code>*</code><code>num,r1) </code><code>#有格式化輸出</code>
<code> </code><code>sys.stdout.write(result)</code>
<code> </code><code>sys.stdout.flush()</code>
<code>if</code> <code>__name__ </code><code>=</code><code>=</code> <code>'__main__'</code><code>:</code>
<code> </code><code>for</code> <code>i </code><code>in</code> <code>range</code><code>(</code><code>1</code><code>,</code><code>101</code><code>):</code>
<code> </code><code>time.sleep(</code><code>0.1</code><code>) </code><code>#延遲0.1s</code>
<code> </code><code>jindutiao(i,</code><code>100</code><code>)</code>
五、python子產品os
<code>#OS(跟系統相關的東西都在裡邊)</code>
<code>os.getcwd() 擷取目前工作目錄,即目前python腳本工作的目錄路徑</code>
<code>os.chdir(</code><code>"dirname"</code><code>) 改變目前腳本工作目錄;相當于shell下cd</code>
<code>os.curdir 傳回目前目錄: (</code><code>'.'</code><code>)</code>
<code>os.pardir 擷取目前目錄的父目錄字元串名:(</code><code>'..'</code><code>)</code>
<code>os.makedirs(</code><code>'dir1/dir2'</code><code>) 可生成多層遞歸目錄</code>
<code>os.removedirs(</code><code>'dirname1'</code><code>) 若目錄為空,則删除,并遞歸到上一級目錄,如若也為空,則删除,依此類推</code>
<code>os.mkdir(</code><code>'dirname'</code><code>) 生成單級目錄;相當于shell中mkdir dirname</code>
<code>os.rmdir(</code><code>'dirname'</code><code>) 删除單級空目錄,若目錄不為空則無法删除,報錯;相當于shell中rmdir dirname</code>
<code>os.listdir(</code><code>'dirname'</code><code>) 列出指定目錄下的所有檔案和子目錄,包括隐藏檔案,并以清單方式列印</code>
<code>os.remove() 删除一個檔案</code>
<code>os.rename(</code><code>"oldname"</code><code>,</code><code>"new"</code><code>) 重命名檔案</code><code>/</code><code>目錄</code>
<code>os.stat(</code><code>'path/filename'</code><code>) 擷取檔案</code><code>/</code><code>目錄資訊</code>
<code>os.sep 作業系統特定的路徑分隔符,win下為</code><code>"\\",Linux下為"</code><code>/</code><code>"</code>
<code>os.linesep 目前平台使用的行終止符,win下為</code><code>"\t\n"</code><code>,Linux下為</code><code>"\n"</code>
<code>os.pathsep 用于分割檔案路徑的字元串</code>
<code>os.name 字元串訓示目前使用平台。win</code><code>-</code><code>></code><code>'nt'</code><code>; Linux</code><code>-</code><code>></code><code>'posix'</code>
<code>os.system(</code><code>"bash command"</code><code>) 運作shell指令,直接顯示</code>
<code>os.environ 擷取系統環境變量</code>
<code>os.path.abspath(path) 傳回path規範化的絕對路徑</code>
<code>os.path.split(path) 将path分割成目錄和檔案名二進制組傳回</code>
<code>os.path.dirname(path) 傳回path的目錄。其實就是os.path.split(path)的第一個元素</code>
<code>os.path.basename(path) 傳回path最後的檔案名。如何path以/或\結尾,那麼就會傳回空值。即os.path.split(path)的第二個元素</code>
<code>os.path.exists(path) 如果path存在,傳回</code><code>True</code><code>;如果path不存在,傳回</code><code>False</code>
<code>os.path.isabs(path) 如果path是絕對路徑,傳回</code><code>True</code>
<code>os.path.isfile(path) 如果path是一個存在的檔案,傳回</code><code>True</code><code>。否則傳回</code><code>False</code>
<code>os.path.isdir(path) 如果path是一個存在的目錄,則傳回</code><code>True</code><code>。否則傳回</code><code>False</code>
<code>os.path.join(path1[, path2[, ...]]) 将多個路徑組合後傳回,第一個絕對路徑之前的參數将被忽略</code>
<code>os.path.getatime(path) 傳回path所指向的檔案或者目錄的最後存取時間</code>
<code>os.path.getmtime(path) 傳回path所指向的檔案或者目錄的最後修改時間</code>
六、python加密子產品hashlib
<code>#md5是不可逆的,通過密文比較方法确認</code>
<code>#例如:</code>
<code>import</code> <code>hashlib </code><code>#導入加密子產品</code>
<code>obj </code><code>=</code> <code>hashlib.md5() </code><code>#定義MD5加密</code>
<code>#obj.update('123') #python2.7的寫法</code>
<code>obj.update(bytes(</code><code>'123'</code><code>,encoding</code><code>=</code><code>'utf-8'</code><code>)) </code><code>#python3.0的寫法,必須用bytes</code>
<code>result </code><code>=</code> <code>obj.hexdigest() </code><code>#obj.hexdigest就是擷取加密後的字元串</code>
<code>print</code><code>(result) </code><code>#列印加密後的字元串</code>
<code>#為了防止MD5 對稱破解,可以用一下方法來解決:</code>
<code>import</code> <code>hashlib </code><code>#導入加密子產品</code>
<code>obj </code><code>=</code> <code>hashlib.md5(bytes(</code><code>'djfjdsofhosdfjo13432534eee'</code><code>,encoding</code><code>=</code><code>'utf-8'</code><code>)) </code>
<code> </code><code>#定義MD5加密,首先加密這裡的字元串</code>
<code>#obj.update('123') #python2.7的寫法加密</code>
<code>obj.update(bytes(</code><code>'123'</code><code>,encoding</code><code>=</code><code>'utf-8'</code><code>)) </code><code>#python3.0的寫法加密,必須用bytes</code>
<code> </code><code>#這裡加密是在上邊定義的時候加密基礎之上再加密。</code>
<code>result </code><code>=</code> <code>obj.hexdigest() </code><code>#obj.hexdigest就是擷取加密後的字元串</code>
<code>print</code><code>(result) </code><code>#列印加密後的字元串</code>
七、python正規表達式
<code>#正規表達式用的python的re子產品</code>
<code>#它是一個小型程式設計語言,主要做字元串的一個比對</code>
<code>#導入 import re</code>
<code>1.re</code><code>.findall(x,y)</code>
<code> </code><code>#去字元串y裡邊,把所有比對規則x的的結果,通過一個清單形式傳回來。</code>
<code> </code><code>import</code> <code>re</code>
<code> </code><code>a</code><code>=</code> <code>re.findall(</code><code>'yang'</code><code>,</code><code>'dkfjdyangdif'</code><code>)</code>
<code> </code><code>print</code><code>(a)</code>
<code>2.</code><code>字元分為:</code><code>1</code><code>、普通字元</code>
<code> </code><code>2</code><code>、元字元: . ^ $ * + ? {} [] | () \ (11個)</code>
<code> </code><code>1 . 代表除換行符以外的任何一個字元</code>
<code> </code><code>2 ^ 比對字元串開始位置</code>
<code> </code><code>3 $ 比對字元串終止位置 </code>
<code> </code><code>4 * 比對0-多次</code>
<code> </code><code>5 + 比對1-多次</code>
<code> </code><code>6 ? 比對0-1次</code>
<code> </code><code>7 {} 比對固定幾次,或者一個範圍</code>
<code> </code><code>{1-5}從1-5次</code>
<code> </code><code>{,5}從0-5次</code>
<code> </code><code>{1,}從1-多次</code>
<code> </code><code>8</code> <code>[] 比對或的概念</code>
<code> </code><code>1.比對b或者c都會比對到輸出(隻能比對一個字元)</code>
<code> </code><code>p1 </code><code>=</code> <code>re.findall(</code><code>'a[bc]d'</code><code>,</code><code>'abd'</code><code>)</code>
<code> </code><code>print</code><code>(p1)</code>
<code> </code><code>2.</code><code>比對範圍(比對a</code><code>-</code><code>z的範圍,但這裡隻能比對一個字元)</code>
<code> </code><code>p1 </code><code>=</code> <code>re.findall(</code><code>'a[a-z]d'</code><code>,</code><code>'add'</code><code>)</code>
<code> </code><code>3.</code><code>比對字元集(比對</code><code>+</code><code>号之前的a</code><code>-</code><code>z的n個字元都會被比對)</code>
<code> </code><code>p1 </code><code>=</code> <code>re.findall(</code><code>'a[a-z]+d'</code><code>,</code><code>'addfddd'</code><code>)</code>
<code> </code><code>4.</code><code>中括号裡邊具有特殊意義的字元:</code>
<code> </code><code>1</code> <code>-</code> <code>中橫線代表範圍:a</code><code>-</code><code>z </code><code>0</code><code>-</code><code>9</code>
<code> </code><code>2</code> <code>^ 代表非,否的意思</code>
<code> </code><code>3</code> <code>\d 代表數字</code>
<code> </code><code>9</code> <code>\ 功能: </code><code>1</code><code>、\後加元字元,取消元字元的功能</code>
<code> </code><code>2</code><code>、\後加某些字元有一些特殊的意義</code>
<code> </code><code>例:比對單詞字元</code>
<code> </code><code>import</code> <code>re</code>
<code> </code><code>#比對首字母I,而不是字元串裡邊的I</code>
<code> </code><code>p1 </code><code>=</code> <code>re.findall(r</code><code>'I\b'</code><code>,</code><code>'I am abcIdd'</code><code>)</code>
<code> </code><code>#r :代表原生字元串,r後邊都是普通字元串</code>
<code> </code><code>#\b :比對單詞的開始或結束</code>
<code> </code><code>10</code> <code>\w 比對字母或數字或下劃線或漢字</code>
<code> </code><code>11</code> <code>\s 比對任意的空白符</code>
<code> </code><code>12</code> <code>\d 比對數字</code>
<code> </code><code>13.</code> <code>\b 比對單詞的開始或結束</code>
<code>3.</code><code>函數方法:</code>
<code> </code><code>1.match</code> <code>比對起始位置;match().group() group是match一個方法,取比對值</code>
<code> </code><code>2.search</code> <code>比對到第一個就結束</code>
<code> </code><code>3.findall</code> <code>傳回一個清單</code>
<code> </code><code>finditer 傳回一個對象,可以周遊、取值</code>
<code> </code><code>4.sub</code> <code>比對,替換</code>
<code> </code><code>subn 不但比對、替換,還會把替換的次數列印出來</code>
<code> </code><code>5.split</code> <code>分割</code>
<code> </code><code>6.re</code><code>.</code><code>compile</code><code>(strPattern[,flag])</code>
<code> </code><code>這個方法是Pattern類的工廠方法,用于将字元串形式的正規表達式編譯為Pattern對象</code>
<code> </code><code>。第二個參數flag是比對模式,取值可以使用按位或運算符‘|’表示同時生效,如:</code>
<code> </code><code>re.I | re.M</code>
<code> </code><code>可以把正規表達式編譯成一個正規表達式對象。可以把那些經常使用的正規表達式編譯</code>
<code> </code><code>成正規表達式對象,這樣可以提高一定的效率,下面是一個正規表達式對象的一個例子</code>
<code> </code><code>import</code> <code>re</code>
<code> </code><code>text </code><code>=</code> <code>"aaa is a handsome boy,he is cool,clever,and so on..."</code>
<code> </code><code>regex </code><code>=</code> <code>re.</code><code>compile</code><code>(r</code><code>'\w*oo\w*'</code><code>)</code>
<code> </code><code>print</code><code>(regex.findall(text))</code>
<code>4.</code><code>正規表達式分組</code>
<code> </code><code>(去已經比對到的資料中,再比對資料)</code>
<code> </code><code>r.group() 用</code><code>"字元串"</code><code>來比對</code>
<code> </code><code>r.groups() 用()來比對</code>
<code> </code><code>r.groupdict() 用?P<name> 來比對,定義name為key,取的值為value</code>
<code> </code><code>例:</code>
<code> </code><code># import re</code>
<code> </code><code># text = "has hal dfdsjlfjdsl"</code>
<code> </code><code># r = re.match("h(?P<name>\w+)",text) #隻比對首</code>
<code> </code><code># print(r.group())</code>
<code> </code><code># print(r.groups())</code>
<code> </code><code># print(r.groupdict())</code>
<code> </code><code>輸出:</code>
<code> </code><code>has</code>
<code> </code><code>(</code><code>'as'</code><code>,)</code>
<code> </code><code>{</code><code>'name'</code><code>: </code><code>'as'</code><code>}</code>
<code> </code><code># text = "has hal dfdsjlfjdsl hao" #比對多個</code>
<code> </code><code># r = re.findall("h\w+",text)</code>
<code> </code><code># print(r)</code>
<code> </code><code>[</code><code>'has'</code><code>, </code><code>'hal'</code><code>, </code><code>'hao'</code><code>]</code>
<code> </code><code># text = "has hal dfdsjlfjdsl hao"</code>
<code> </code><code># r = re.findall("h(\w+)",text)</code>
<code> </code><code>[</code><code>'as'</code><code>, </code><code>'al'</code><code>, </code><code>'ao'</code><code>]</code>
<code> </code><code># text = "hasbs hisbs dfdsjlfjdsl hdsas"</code>
<code> </code><code># r1 = re.findall("h(\w+)s(b)s",text)</code>
<code> </code><code># print(r,r1)</code>
<code> </code><code>[</code><code>'asbs'</code><code>, </code><code>'isbs'</code><code>, </code><code>'dsas'</code><code>] [(</code><code>'a'</code><code>, </code><code>'b'</code><code>), (</code><code>'i'</code><code>, </code><code>'b'</code><code>)]</code>
<code> </code><code>text </code><code>=</code> <code>"asbs hisbs dfdsjlfjdsl hdsas"</code>
<code> </code><code>r1 </code><code>=</code> <code>re.split(</code><code>"s(b)s"</code><code>,text,</code><code>1</code><code>)</code>
<code> </code><code>print</code><code>(r1)</code>
<code> </code><code>#輸出:</code>
<code> </code><code>[</code><code>'a'</code><code>, </code><code>'b'</code><code>, </code><code>' hisbs dfdsjlfjdsl hdsas'</code><code>]</code>
本文轉自506554897 51CTO部落格,原文連結:http://blog.51cto.com/506554897/1829307,如需轉載請自行聯系原作者