python了解
1.使用python的語言的公司
?
YouTube 世界最大的視頻網(wǎng)站,用python開發(fā)的
youku,中國最大的視頻網(wǎng)站
Dropbox美國最打云存儲網(wǎng)站,python的創(chuàng)始人就在這家公司
Ansible 被Redhat收購了,2億美元
騰訊藍鯨,游戲平臺,開源的,如英雄聯(lián)盟
?
?
2.語言全球排名:
Java
C
C++
python(什么都能做)
《普通運維人員就是秋后的螞蚱》
?
?
3.語言的算法和設計模式:
冒泡,二叉樹,哈希,拆半,
工廠模式,單例模式,亨元模式,代理模式
?
?
4. 編程語言的分類:
編譯型和解釋型
靜態(tài)語言和動態(tài)語言
強類型定義語言和弱類型定義語言
?
(1)編譯型:
有一個負責翻譯的程序來對我們的源代碼進行轉(zhuǎn)換,生成相應的可執(zhí)行代碼這就是編譯 (Compile)
負責編譯的程序自然就是編譯器
?
如果我們寫的程序代碼都包含在一個源文件中,那么通常編譯之后就會直接生成一個可執(zhí)行文件,C和C++就是這樣,程序運行之前要先編譯一下,
才能在運行,把源代碼生成一個機器碼,這樣就可以運行這個機器碼和這個文件,
?
對于一個項目來說,就是將很多文件的源文件進行編譯,然后將這些編譯后的目標文件打包成一個可執(zhí)行的文件,也叫鏈接文件,打包成一個可執(zhí)行文件又另一程序完成,這個負責鏈接的程序就交鏈接程序
?
?
C和C++典型的編譯型語言 ,在運行之前都要進行編譯,編譯完成之后進行生成一個可執(zhí)行文件,編譯完成生成的機器碼就是可執(zhí)行文件。機器碼就是直接和CPU打交道的
?
?
(2)解釋型:
在程序運行前一刻,還只有源代碼沒有可執(zhí)行程序,而程序每執(zhí)行到源程序的某一條指令,則會有一個稱為解釋程序的外殼將源代碼轉(zhuǎn)換成二進制嗎以供執(zhí)行,就是不斷的解釋,執(zhí)行,
?
(3)兩者的用處:
前者用在開發(fā)操作系統(tǒng),大型應用程序,數(shù)據(jù)庫系統(tǒng)是應用,速度快C C++
后者用在一些網(wǎng)頁腳本,服務器腳本,速度慢,兼容性強? 如Java?? python
?
java 解釋型語言,但是它又兼具了一些編譯型語言的有點,要進行一次預編譯,會把一部分語言編譯成機器碼,有很多一部分直接與機器碼打交道,所以快,比python快
解釋型的語言可移植,比如直接放到Windows上就可以用,但是編譯型的語言需要重新編譯
?
?
2.動態(tài)語言和靜態(tài)語言
給動態(tài)類型語言編程是,不用給任何變量指定數(shù)據(jù)類型,該語言在第一次賦值給變量時,在內(nèi)部將數(shù)據(jù)類型記錄下來
如python
靜態(tài)語言:在一開始寫程序時就要聲明變量的數(shù)據(jù)類型,如C C++ C# JAVA
?
3.強類型定義語言和弱類型定義語言
強類型定義語言:一旦一個變量被指定了數(shù)據(jù)類型,不經(jīng)過強制轉(zhuǎn)換,就永遠是這個數(shù)據(jù)類型,強類型定義語言是類型安全的語言,python JAVA
弱類型定義語言:一個變量可以賦予不同的數(shù)據(jù)類型,是類型不安全的語言
VBscript,
shell腳本是弱類型定義語言,是類型不安全的語言。定義一個變量,又能當字符串處理,又能當數(shù)據(jù)處理
?
5.python優(yōu)缺點
?
容易學習
開發(fā)效率高,有強大的第三方庫,功能模塊多,可以二次開發(fā)
高級語言
可移植性:如果便面依賴性,可以直接移植到其他平臺使用
可擴展性:可以和C和C++結(jié)合使用
可嵌入性:可以嵌入C或C++里,做腳本
?
?
缺點:
速度慢
代碼不能加密,源碼是以明文形式的
python的多線程是沒法用多CPU內(nèi)核的
?
6.python解釋器:
?
Cpython 應用最廣泛
pypy速度快
?
7.python的發(fā)展史
1994年1.0版本
2004年推出2.4版本,同年最流行的WEB框架Django誕生
2008推出的2.6版本既兼容2.4版本有兼容3.0 版本,是一個過度的版本
2010的2.7會支持到2020年
最新版3.5
?
python3里默認可以編寫中文的字符了
轉(zhuǎn)載于:https://www.cnblogs.com/Leonardo-li/p/8630483.html
總結(jié)
- 上一篇: 苹果开发者账号如何多人协作进行开发和真机
- 下一篇: 年薪50万的Python架构师不是梦