語言(執行速度快) 機器碼
Java C# PHP Python (開發效率高),這些語言本身不需要你去管理內存了。
它們都有自己的虛擬機,對於開辟內存、釋放內存都由這個虛擬機處理。
C 和 Python、Java、C#等
C語言: 代碼編譯得到 機器碼 ,機器碼在處理器上直接執行,每一條指令控制CPU工作
其他語言: 代碼編譯得到 字節碼 ,虛擬機執行字節碼並轉換成機器碼再后在處理器上執行
Python 和 C Python這門語言是由C開發而來
對於使用:Python的類庫齊全並且使用簡潔,如果要實現同樣的功能,Python 10行代碼可以解決,C可能就需要100行甚至更多.
對於速度:Python的運行速度相較與C,絕逼是慢了
Python 和 Java、C#等
對於使用:Linux原裝Python,其他語言沒有;以上幾門語言都有非常豐富的類庫支持
對於速度:Python在速度上可能稍顯遜色
所以,Python和其他語言沒有什么本質區別,其他區別在於:擅長某領域、人才豐富、先入為主
python的種類:
Cpython
Python的官方版本,使用C語言實現,使用最為廣泛,CPython實現會將源文件(py文件)轉換成字節碼文件(pyc文件),然后運行在Python虛擬機上。
Jyhton
Python的Java實現,Jython會將Python代碼動態編譯成Java字節碼,然后在JVM上運行。
IronPython
Python的C#實現,IronPython將Python代碼編譯成C#字節碼,然后在CLR上運行。(與Jython類似)
PyPy(特殊)
Python實現的Python,將Python字節碼直接編譯成機器碼。
RubyPython、Brython ...
第一個代碼:
#!/usr/bin/env python
print('hello,wolrd')
python的用戶交互函數:input() 2.7的話叫做raw_input()
打印用戶輸入用戶名和密碼(python專門提供了一個模塊getpass,讓密碼不可見)
可以看到輸入時的密碼:
#!/usr/bin/env python
i1 = input('請輸入名字:')
i2 = input('請輸入密碼:')
print(i1)
print(i2)
不可以看到用戶輸入時的密碼:
#!/usr/bin/env python
import getpass
i1 = input('請輸入名字:')
#i2 = input('請輸入密碼:')
i2 = getpass.getpass('請輸入密碼:')
print(i1)
print(i2)
三,變量:主要用於將某些東西賦值給它。比如數字、字符串等。
a=1
a='ABC'
定義變量的要求:
變量名只能是 字母、數字或下划線的任意組合
變量名的第一個字符不能是數字
變量名不能是Python內部的關鍵字
以下關鍵字不能聲明為變量名
['and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield']
四,Python基本的數據類型
字符串:需要用引號引起來
a = " test "
a = ' test '
a = """ test """
數字:又分為整數和浮點數
布爾值:True 、False (主要用於判斷)