国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

2015-10-25第一天學習

2019-11-14 16:56:32
字體:
來源:轉載
供稿:網友

Python介紹

    Python前世今生

Python的創始人為吉多·范羅蘇姆(Guido van Rossum)。1989年的圣誕節期間,吉多·范羅蘇姆為了在阿姆斯特丹打發時間,決心開發一個新的腳本解釋程序,作為ABC語言的一種繼承。之所以選中Python作為程序的名字,是因為他是BBC電視劇——蒙提·派森的飛行馬戲團(Monty Python's Flying Circus)的愛好者。

目前吉多仍然是Python的主要開發者,決定整個Python語言的發展方向。

從效率上來講

  C語言會編譯成機器碼,所以執行快

  Python是高級語言會先編譯成字節碼,然后用解釋器解釋執行,執行效率慢了不少。

但是

  Python語言學習曲線更緩,而且類庫齊全,功能多樣能做不少事情,夠用就好。

        Python在TIOBE排行榜第5名,整體呈上升趨勢

    Python應用

圖形處理,有PIL、Tkinter等圖形庫支持,能方便進行圖形處理。

數學處理,NumPy擴展提供大量與許多標準數學庫的接口,

文本處理,python提供的re模塊能支持正則表達式,還提供SGML,xml分析模塊,許多程序員利用python進行XML程序的開發。

數據庫編程,程序員可通過遵循Python DB-API(數據庫應用程序編程接口)規范的模塊與Microsoft SQL Server,Oracle,Sybase,DB2,MySQL等數據庫通信。python自帶有一個Gadfly模塊,提供了一個完整的SQL環境。

網絡編程,提供豐富的模塊支持sockets編程,能方便快速地開發分布式應用程序。

作為Web應用的開發語言,支持最新的XML技術。

多媒體應用,Python的PyOpenGL模塊封裝了"OpenGL應用程序編程接口",能進行二維和三維圖像處理。PyGame模塊可用于編寫游戲軟件。

      使用企業:Youtube,Dropbox,Quora,Google,NASA

  在Google內部的很多項目,例如Google App Engine使用C++編寫性能要求極高的部分,然后用Python或java/Go調用相應的模塊。《Python技術手冊》的作者馬特利(Alex Martelli)說:"這很難講,不過,2004年,Python已在Google內部使用,Google召募許多Python高手,但在這之前就已決定使用Python。他們的目的是盡量使用Python,在不得已時改用C++;在操控硬件的場合使用C++,在快速開發時候使用Python。"

    Python種類

Python除了有python2和python3的區別,還有具有眾多的版本:

  • CPython: 用C實現, 默認Python指的是CPython
  • JPython: 用Java實現,在JVM里面執行
  • IronPython: 用C#實現
  • Cython: 一個Python的超級,可以綁定后調用C
  • Numba: 增加JIT功能,為 高性能科學計算 提供支持,支持CPU和GPU計算
  • ipython: 一個特殊的Python計算環境
  • PyPy: 用Python實現的Python版本,增加 JIT 功能

Python還有眾多的綁定實現:

  • RubyPython: 在Ruby中使用Python代碼
  • PyObjc: 綁定Objective-C來在OS X平臺實現GUI程序
  • PyQt: 綁定QT來實現GUI程序
  • PyGTK: 綁定GTK在linux平臺實現GUI程序
  • Brython: 用Javascript實現Python VM,從而在瀏覽器中執行Python代碼

Python環境搭建

pycharm PRofessional 最新

下載地址:

https://www.jetbrains.com/pycharm/download/

Ubuntu最新32/64無所謂

下載地址:

http://www.ubuntu.com/download/desktop/thank-you?country=CN&version=14.04.1&architecture=amd64

python2.7.x

        Windows 與 Linux版本注意 

         win不支持多進程的類庫

        *Centos環境下升級Python,需要注意yum使用2.6,升級要調整yum配置防止錯誤

Python入門

print 'hello,world'

Python執行過程

1.讀文件

2.分析 詞法分析 語法分析

3.編譯字節碼

4.字節碼解釋機器碼執行

解釋器

在Linux下的每個py文件最好明確指定解釋器,可以避免不少錯誤

#!/usr/bin/env python

中文輸入

學習Python經常遇到的一個問題是編碼錯誤導致的不能正常輸出。

SyntaxError: Non-ASCII character '/xc4' in file D:/autopy/hello_world.py on line 3, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

Python解釋器讀取代碼默認使用ASCII,沒有中文編碼 2^8=256種可能

unicode 2^16=65536種可能

在每個文件的開頭明確編碼格式可以最大程度避免這個問題

# -*- coding: utf-8 -*-   

對應到pycharm需要修改File-Setting-Editor-File Encodings:

IDE Encoding & Project Encoding

在新建文件自動加入聲明的方法:

help中找到find action,輸入file and code templates,找到python模板文件,添加即可。

注釋

				#單行注釋			
				"""多行注釋"""			

腳本參數

捕獲參數需要用到sys模塊

模塊函數 sys.argv

輸出是一個列表,第一項內容是文件名字

變量

變量名字有要求:

  1. 字母 數字 下劃線
  2. 第一個字符不能是數字
  3. 避開內置關鍵字

變量賦值:

a=10
b=3.14
c="hi,world"
name1 = name2

輸入輸出

輸入:
raw_input("Something")
import getpass.getpass #系統內置輸入密碼,看不到			
輸出:print			

流程控制

if something: #值對比,并非內存地址對比			
else:
something other
if a==b:
elif a==c:
else:

初始基本數據類型

單值

數字

整型 3714

長整型 99988887777777766666

浮點型 3.14

布爾值 0,1

復數 z = a + bj

字符串

格式化

切片 索引

長度 len(x) name[-1] == name[len(name) -1 ]

去除空格 x.strip() 去除左邊的空格 x.lstrip() 去除右邊空格 x.rstrip()

分割 x.split(',')

集合

列表

功能與字符串類似

切片 索引

追加 x.append()

刪除 del x[i]

長度 len(x) #長度就是列表個數

列表變字符串 "_",join(x)

包含 in 

元組

對比列表,沒有修改功能

#字符串,列表,元組之間聯系 切片,索引,循環,長度,包含

#字符串,列表,元組不同 字符串重新開辟空間,列表修改不變,元組不允許修改

字典

又稱"鍵值對" key & value

{ 
"name": "echo",
"age": 18,
"gender": "看心情",
}			

索引通過"鍵"來查.無序

for k,v in x.items():  #所有元素 鍵值對			
print k
print v
print				"-------------------------"
x.values() #所有值
x.keys() #所有鍵

哈希表

循環控制

for			
for i in x
break				#退出循環			
pass			
continue				#繼續			
while			
while true:  #死循環
  print xxx

基本文本操作

用戶名密碼都是在數據庫里面保存,驗證用戶名密碼需要讀取數據庫內容

找到并打開文件

文件路徑 e:/log
file file(文件路徑,模式)
open
file_obj = file(文件路徑,'w+') #這個叫文件句柄			

文件操作,讀寫

file_obj.read() # 一次性讀入			
file_obj.readlines() #行讀取			
file_obj.xreadlines() # 一次一行,處理大文件 已經被廢棄,有替代品			
for line in file_obj:
#每次循環,只讀一行,避免全部讀取入內存			
file_obj.write()
file_obj.writeline()
文件關閉
file_obj.close()			

r,只讀打開

w,寫入,覆蓋原來

a,追加

r+,讀寫

參考鏈接:

https://zh.wikipedia.org/wiki/Python

http://lesliezhu.github.io/public/2014-10-24-cython-start.html

http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 阳高县| 蚌埠市| 东阳市| 固阳县| 雅江县| 瓦房店市| 屏东市| 崇仁县| 昂仁县| 巴彦淖尔市| 胶南市| 双鸭山市| 吐鲁番市| 赤壁市| 永兴县| 新泰市| 吉林省| 峨眉山市| 特克斯县| 高陵县| 开化县| 小金县| 大安市| 乐清市| 桂阳县| 九江市| 自治县| 扎鲁特旗| 雅安市| 大冶市| 平远县| 房山区| 荔波县| 五河县| 嘉黎县| 绥芬河市| 长顺县| 伊吾县| 台东市| 沐川县| 三台县|