Python-基礎學習-Day1
阿新 • • 發佈:2017-12-31
初學 echo window 二進制 sql 而且 字母 擴展 調用
1 Python介紹
1.1 Python 是一門什麽樣的語言?
python是一門動態解釋性的強類型定義語言。
編譯型的特點:可一致性差,運行速度快。
解釋型的特點:邊執行邊解釋,速度慢
1.2 Python 優缺點
優點
- Python的定位是“優雅”、“明確”、“簡單”,所以Python程序看上去總是簡單易懂,初學者學Python,不但入門容易,而且將來深入下去,可以編寫那些非常非常復雜的程序。
- 開發效率非常高,Python有非常強大的第三方庫,基本上你想通過計算機實現任何功能,Python官方庫裏都有相應的模塊進行支持,直接下載調用後,在基礎庫的基礎上再進行開發,大大降低開發周期,避免重復造輪子。
- 高級語言————當你用Python語言編寫程序的時候,你無需考慮諸如如何管理你的程序使用的內存一類的底層細節
- 可移植性————由於它的開源本質,Python已經被移植在許多平臺上(經過改動使它能夠工 作在不同平臺上)。如果你小心地避免使用依賴於系統的特性,那麽你的所有Python程序無需修改就幾乎可以在市場上所有的系統平臺上運行
- 可擴展性————如果你需要你的一段關鍵代碼運行得更快或者希望某些算法不公開,你可以把你的部分程序用C或C++編寫,然後在你的Python程序中使用它們。
- 可嵌入性————你可以把Python嵌入你的C/C++程序,從而向你的程序用戶提供腳本功能。
缺點
- 速度慢
- 不能加密
- 線程不能利用多CPU問題
2 Python的安裝
2.1 windows
1、下載安裝包
https://www.python.org/downloads/2、安裝
默認安裝路徑:C:\python273、配置環境變量
【右鍵計算機】--》【屬性】--》【高級系統設置】--》【高級】--》【環境變量】--》【在第二個內容框中找到 變量名為Path 的一行,雙擊】 --> 【Python安裝目錄追加到變值值中,用 ; 分割】
如:原來的值;C:\python27,切記前面有分號
註意:windows同時安裝python3.5和python2.7,配置環境變量後輸入python2提示:不是內部或外部命令,也不是可運行的程序
- 已經配置環境變量
- 根據python2.7的安裝路徑修改python.exe的名稱為python2.exe
- cmd命令直接輸入python2正常
2.2 linux安裝python2.7
下載源碼,並重新編譯安裝:
1. cd /usr/local/src/
2. wget http://python.org/ftp/python/2.7.8/Python-2.7.8.tgz
3. tar xf Python-2.7.8.tgz
4. cd Python-2.7.8
5. ./configure --prefix=/usr/local/python27
6. make && make install
7. mv /usr/bin/python /usr/bin/python26 #將系統安裝的重命名轉移
8. ln -s /usr/local/python27/bin/python /usr/bin/ #創建軟連接直接調用2.7版本python
9. vim /usr/bin/yum ##!/usr/bin/python2.6 修改原系統默認的python版本 以保證yum命令應用
2.3 linux安裝python3.5
下載源碼,並重新編譯安裝
下載Python3.5的源碼包並編譯
wget https://www.python.org/ftp/python/3.5.0/Python-3.5.0.tgz
tar xf Python-3.5.0.tgz
cd Python-3.5.0
./configure --prefix=/usr/local --enable-shared
make
make install
溫馨提醒:如果編譯遇到如下問題:
Ignoring ensurepip failure: pip 7.1.2 requires SSL/TLS
解決方法:
yum install -y openssl openssl-devel
繼續:
ln -s /usr/local/bin/python3 /usr/bin/python3
在運行Python之前需要配置庫:
echo /usr/local/lib >> /etc/ld.so.conf.d/local.conf
ldconfig
可以設置別名:alias py=python3方便使用
3 Hello world等程序代碼編寫
程序執行信息:
在windows上執行python後進入python交互器:
>>> print ("Hello world!")
Hello world!
註意:python2的raw_input() == python3的input() 但是在python3中執行不帶括號的會報錯:
>>> print "Hello world!"
File "<stdin>", line 1
print "Hello world!"
^
SyntaxError: Missing parentheses in call to ‘print‘
3.1 小知識點
- 退出Python交互器:exit() windows下ctrl+z 回車 linux下Ctrl+z退出
- = 左邊永遠是變量名 =右邊字符串的話需要添加"string" 數字可不加,運算:+-*/
- print (“字符串”,變量) #數字不需要加引號 引用的變量不加引號
- 在 python2 裏輸出中文 需要聲明字符編碼: #-*- coding:utf-8 -*-,python3 默認就是UTF-8字符編碼
- 一個二進制數字=1bite bit = 計算機的最小存儲單位。8比特 = 1bytes 字節 1024bytes = 1kbytes KB
- 雙引號同單引號一樣 :單雙引號
- 單行和多行註釋:ctrl + /
- 多行註釋:’’’ ’’’ 通三個雙引號 同時表示一個段落的字符串。
- ctrl +d 復制當前行
- id() 可查看變量內存地址
3.2 變量命名規則:
字符編碼及變量聲明
python2中一定要聲明字符編碼 #_*_coding:utf-8_*_
python3中默認是utf-8
name = "Stone"
上述代碼聲明了一個變量,變量名為: name,變量name的值為:"Stone"
變量定義的規則:
- 變量名只能是 字母、數字或下劃線的任意組合
- 變量名的第一個字符不能是數字
- 以下關鍵字不能聲明為變量名[‘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‘]
變量程序實例:
name = input("name:") 定義變量
age = input("age:")
job = input("job:")
hobby = input("hobby:")
info = ‘‘‘ 定義輸出變量
-----info of %s -----
Name : %s
Age : %s
Job : %s
Hobby: %s
----- end -----
‘‘‘ %(name,name,age,job,hobby)
print(info) 輸出
3.3 用戶交互
>>> name = input("pls input your name:")
pls input your name:stone
>>> name
‘stone‘
將input的值賦予給name變量,輸入的是什麽name就是什麽
#!/usr/bin/env python
#_*_coding:utf-8_*_
#name = raw_input("What is your name?") #only on python 2.x
name = input("What is your name?")
print("Hello " + name )
輸入密碼時,如果想要不可見,需要利用getpass 模塊中的 getpass方法,即:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import getpass
# 將用戶輸入的內容賦值給 name 變量
pwd = getpass.getpass("請輸入密碼:")
# 打印輸入的內容
print(pwd)
3.4 條件判斷與首行縮進
猜年齡程序
#!/usr/bin/env python #指定解釋器為python
right_age = 23 #首先定義正確的年齡
guess_age = int(input("please input your guess num:"))#將input的值定義一個變量名
if right_age == guess_age: #進行條件判斷 正確(註意判斷後加":")
print("right") #註意縮進統一級別縮進要相同
elif guess_age > right_age: #猜的年齡大於真實年齡
print("please guess smaller!")
else:
print("please guess bigger!") #猜的年齡小於真實年齡
猜年齡-循環次數限定
#!/usr/bin/env python
right_age = 23 #定義正確年齡
for n in range(3): #執行3次,沒有猜對退出
guess_age = int(input("please input your guess num:"))
if right_age == guess_age:
print("right")
break # break 猜對後退出當層循環
elif guess_age > right_age:
print("please guess smaller!")
else:
print("please guess bigger!")
else: #猜測次數過多,退出
print("too many times!!!")
小知識點:
出現縮進錯誤提示:註意同一級別的代碼縮進必須保持一致。
選擇多行+tab 進行多行縮進
type + 變量 輸出變量類型
Python-基礎學習-Day1