第一週javascript
第5章java
一、編輯語言主要從如下幾個角度進行分類,編輯型和解釋型、靜態語言和動態語言、強類型定義語言和弱類型定義語言。python
二、編譯型和解釋型c++
編譯型語言:c c++算法
解釋型語言:java javascript python 更容易移植c#
三、動態語言和靜態語言windows
一般咱們所說的動態語言、靜態語言是指動態類型語言和靜態類型語言。安全
1)動態類型語言:是指在運行期間纔去作數據類型檢查的語言,也就是說,在用動態類型的語言編輯時,永遠也不用給任何變量指定數據類型,該語言會在你第一次賦值給變量時,在內部將數據類型記錄下來。Python和Ruby就是一種典型的動態類型語言網絡
2)靜態類型語言:與動態類型語言恰好相反,它的數據類型是在編譯期間檢查的,也就是說在寫程序時要聲明全部變量的數據類型,c/c++是靜態類型語言的典型表明,其餘的靜態型語言還有c#、JAVA等。多線程
四、強類型定義語言和弱類型定義語言
1)強類型定義語言:強制數據類型定義的語言,也就是說,一旦一個變量被指定了某個數據類型,若是不通過強制轉換,那麼它將永遠是這個數據類型了。
2)弱類型定義語言:數據類型能夠被忽略的語言。它與強類型定義語言相反,一個變量能夠賦不一樣數據類型的值。
強類型定義語言在速度上可能略遜色與弱類型定義語言,可是強類型定義語言帶來的嚴謹可以有效的避免許多錯誤。另外,這門語言是否是動態語言與這門語言是否類型安全之間是徹底沒有聯繫的。
例:python是動態語言,是強類型定義語言,JAVA是靜態語言,是強類型定義語言
五、python的優缺點
優勢:
1)python的定位是「優雅」、「明確」、「簡單」,因此python程序看上去老是簡單易懂,初學者學python,不但入門容易,並且未來深刻下去,能夠編寫那麼很是複雜的程序。
2)開發效率很是高,python有很是強大的第三方庫,基本上你想經過計算機實現任何功能,python官方庫裏都有相應的模塊進行支持,直接下載調用後,在基礎庫的基礎上再進行開發,大大下降開發週期,避免重複造輪子。
3)高級語言:當你使用python語言編寫程序的時候,你無需考慮如何管理你的程序使用的內存一類的底層細節。
4)可移植性:因爲它的開源本質,python已經被移植在許多平臺上,若是你當心地避免使用依賴系統的特性,那麼你的全部python程序無需修改就幾乎能夠在市場上全部的系統平臺上運行。
5)可擴展性:若是你須要你的一段關鍵代碼運行得更快或者但願某些算法不公開,你能夠把你的部分程序用c或c++編寫,而後在你的python程序中使用它們。
6)可嵌入式:你能夠把python嵌入到你的c/c++程序,從而向你的程序用戶提供腳本功能。
缺點:
1)速度慢:python的運行速度相比c語言確實慢不少,跟JAVA相比也要慢一些,但其實這裏所指的運行速度慢在大多數狀況下用戶是沒法直接感知到的,必須藉助測試工具才能體現出來。除非要寫對速度要求極高的搜索引擎等,這種狀況寫,固然仍是建議你用c去實現的。
2)代碼不能加密,由於PYTHON是解釋性語言,它的源碼都是以明文形式存放的。
3)線程不能利用多CPU問題,這是python被人詬病最多的一個缺點,GIL即全局解釋器鎖(Global interpreter Lock),是計算機程序設計語言解釋器用於同步線程的工具,使得任什麼時候刻僅有一個線程在執行,python的線程是操做系統的原生線程,在Linux上爲pthread,在windows上爲win thread,徹底由操做系統調度線程的執行,一個python解釋器進程內有一條主線程,以及多條用戶程序的執行線程。即便在多核CPU平臺上,因爲GIL的存在,因此禁止多線程的並行執行。
六、python 解釋器
當咱們編寫python代碼時,咱們獲得的是一個包含python代碼的以.py爲擴展名的文本文件。要運行代碼,就須要python解釋器去執行.py文件。
Cpython 通常用的都是這個
Ipython
Pypy 能夠顯著提升python代碼的執行速度。
Jython
IronPython
Python的解釋器不少,可是使用最普遍的仍是Cpython。若是要和java或.net平臺交互,最好的辦法不是用Jython或Ironpython,而是經過網絡調用來交互,確保各程序之間的獨立性。
第6章
一、Twisted(不支持3.0)目前不知道支持不支持
二、變量\字符編碼
變量是爲了存東西,爲了後面的調用,
Name 改變後 Name2不會改變 由於name2直接指的是Alex|| 的內存地址,因此name變的時候name2不會改變
#變量定義的規則
1)變量名只能是字母、數字或下劃線的任意組合
2)變量名的第一個字符不能是數字
3)如下關鍵字不能聲明爲變量名
第7章
一、字符編碼和二進制
字符編碼:ASC||碼 0-127 中文:GB2312(1980年)一共收錄了7445個字符,包括6763個漢字和682個其它符號。
二、顯然ASC||碼沒法將世界上的各類文字和符號所有表示,因此,就須要新出一種能夠表明全部字符和符號的編碼,即:Unicode
Unicode(統一碼、萬國碼、單一碼)是一種在計算機上使用的字符編碼,Unicode是爲了解決傳統的字符編碼方案的侷限而產生的,它爲每種語言中的 字符設定了統一而且惟一的二進制編碼,規定全部的字符和符號最少由16位來表示(2個字節),即:2**16=65536.
注:此處說的是最少2個字節,可能更多。
UTF-8,是對Unicode編碼的壓縮和優化,它再也不使用最少使用2個字節,而是將全部的字符和符號進行分類:ascii碼中的內容用1個字節保存,歐洲的字符用2個字節保存,東亞的字符用3個字節保存。
因此,python解釋器在加載.py文件中的代碼時,會對內容進行編碼(默認ascii)’
字符發展史
在python中要是使用漢字的話 須要用UTF-8模式
第8章
#註釋
‘’‘ ‘’‘ 多行註釋 還能夠打印多行
Print (msg)就能夠把註釋的都打印出來
一、用戶輸入 input()默認的類型是str
字符串拼接格式 三種方法:(效率低下)
一、+號
二、%s是佔位符(%string) %d是佔位符(便是數字)%f(浮點)
三、{} .fotmat()
一、getpass 庫 能夠實現密文
在pycharm中很差使的
如何判斷輸入用戶的密碼對不對?
If elif else 條件語句:
若是while語句成立 就執行其下的子程序 若是不成立 則執行else語句。
二、for循環
For in range(3):
Print()
3、continue 繼續 跳出本次循環 繼續下次循環
4、break 是結束當前循環,不是結束全部的循環。