python基礎知識-01-編碼輸入輸出變量

 

 python其餘知識目錄html

 

名詞解釋:
編輯器  ide 程序員  操做系統 ASCAII碼  unicode utf-8

淺談CPU、內存、硬盤之間的關係java

操做系統及Python解釋器工做原理講解python

關於編譯器和解釋器c++

一、typora軟件使用

百度搜索typora軟件 一、標題 # ## ### 二、列表 大綱視圖可顯示目錄程序員

把文字變成灰色 -變成黑點 .加空格 - 表格,段落裏面,左上角四個格子能夠修改表格行列數量。 主題web

shift+tab 前所 tab後所typora編程

一、什麼是程序員 二、計算機基礎 三、Python簡介c#

快捷鍵可粘貼截圖到編輯器 可插入代碼先後各三個反引號。按shift切換到英文字符。可選擇代碼語言 以上語法就是markdown語法windows

(這麼能說,大腦中有不少熟知的故事,而後才隨口而出。)markdown

一、程序員是幹什麼的? 由人來控制電腦,而後解放全人類的。讓電腦代替人類作事情的

二、你爲何要作開發?

三、程序員如何控制電腦? 學一門電腦能認識的語言,控制電腦讓電腦去作事。寫代碼至關於寫做文。(我感受說話演講都是寫做文) *計算機有600多種編程語言,主流的語言有c,c#,c++,java,python,js等等

四、計算機基礎,計算機初步認識 計算機配置。組件。 計算機操做系統 解釋器,編譯器,虛擬機。咱們寫出來的代碼交給解釋器。

五、python2,3的區別

1)python2默認編碼格式爲ASCAII碼,Python3默認編碼格式爲utf-8

2)Python2的print打印是print "字符串" ,python3的print打印是print(「字符串」)

3)Python2和3的輸入不一樣,python3是input(),Python2是raw_input()。

4)py2除法運算不能顯示小數點後面的
5)py2在32位系統和64位系統上有長度限制,超過長度轉爲長整形,py3沒有

六、爲何還要用Python2的呢?Python2,3的區別


二、python解釋器安裝

學會Python語法,安裝解釋器。讓本身寫的代碼在電腦上運行起來。

進入Python官網,進入下載,點擊下載任意 一個版本,單擊安裝。添加到環境變量。馬上安裝,或者自定義安裝。 寫一段代碼,讓解釋器運行這段代碼。Python36,讓它去運行代碼。 win+R cmd命令行操做,解釋器的路徑。解釋器路徑+代碼的路徑。txt格式編碼有問題,另存爲其餘編碼格式的文件並運行就能夠了。


解釋器安裝以後,IDE安裝,即編輯代碼的軟件:pycharm 公司用的Windows版本通常是windows server

入職前學習mac筆記本的使用。

下載解釋器:https://www.python.org/ 點擊downloads,選擇對應的系統。最上面兩個是最新的2和3的版本。歷史版本在下面。 execcutable 下載exec這個版本,64位的 embeddable web-based

沒裝最新的,考慮到兼容性的問題。

爲何還要用Python2的呢?Python2,3的區別


三、Python解釋器環境變量添加

檢查Python解釋器是否安裝成功,進入對應的安裝路徑,執行Python.exe文件。能夠進入Python的交互模式。說明安裝成功。quit()或者exit()退出交互式模式。

爲了進入交互式模式更加方便,添加爲環境變量,可勾選自動添加,添加到本地磁盤;也能夠手動添加。 添加方法:右擊個人電腦-高級系統設置-高級-環境變量-系統環境變量path,編輯-新建而後添加解釋器的安裝路徑c:\Python3\ win10操做方法。

右擊個人電腦-高級系統設置-高級-環境變量-系統環境變量path,編輯 將環境變量複製出來,分號隔開加上解釋器的安裝目錄,而後放到path裏面。從新打開cmd,便不用全路徑執行python.exe。 %SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Python27;C:\Users\Administrator\AppData\Local\Programs\Python\Python36-32 win7添加方法

環境變量意義:方便查找和使用可執行命令

爲了區分Python的版本,將Python安裝目錄下的Python.exe改個名字,好比python27.exe,python36.exe.而後將兩個版本的Python編譯器的安裝目錄都添加到環境變量。這樣之後就方便在cmd命令行區分進入的是哪一個版本的交互模式或者是使用哪一個版本的編輯器了。

%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Python27;C:\Users\Administrator\AppData\Local\Program\Python\Python36-32

問題一: 在環境變量裏添加路徑,路徑不對或有空格會報錯'python' 不是內部或外部命令,也不是可運行的程序或批處理文件。 問題二: 在環境變量裏添加路徑,冒號中文會報錯'python' 不是內部或外部命令,也不是可運行的程序或批處理文件。 問題三: 用Python3執行正常,Python2執行亂碼

右擊cmd窗口欄,查看默認屬性的默認代碼頁爲36(ANSI/OEM-簡體中文 GBK),Python

寫一個文件(腳本),讓Python解釋器運行。 1)打開電腦終端,

2)輸入命令:解釋器路徑 腳本路徑(腳本文件的後綴名什麼都行,只是爲了識別文件類型,本質是打開文件,將文件內容複製到內存運行)

四、計算機編碼知識:

計算機內部保存的電影等等,在底層硬件都是以二進制的形式存在。舉個例子:若是你寫了一個hello,計算機也是以01二進制來存儲的,即在硬盤上的保存形式也是二進制。

01數字組合表示的含義早期是ASCAII碼,8位表示一個字符。能夠表示2^8個字符。

unicode 萬國碼 一個字符用32位即4個字節表示。能表示2^32個字符,如今使用到了21位。

因爲unicode每一個字符用32位,會浪費不少存儲空間,因而有了utf-8。utf-8將unicode壓縮了。即unicode一個字符佔四個字節,在utf-8中就將沒有用到的字節空間去掉,佔了幾個字節就用幾個字節,很少佔用字節。

utf-8格式的文件,用Python2,3執行。英文2,3執行都正常,中文用3正常,2亂碼。 python3解釋器默認編碼utf-8。Python2解釋器默認編碼ASCAII碼。因爲編碼格式不一樣,因此python2執行utf-8的文件會出現亂碼。因此寫文件爲了考慮兼容性,在腳本開頭寫上編碼格式utf-8。 頭文件添加編碼格式utf-8

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

之後寫程序最好寫上上面的頭文件,這樣2,3運行都不亂碼 Windows另存爲某一個文件裏的unicode其實是utf-16。 編碼以什麼方式寫,就要以什麼方式打開,即編碼和解碼要一致。

綜上所述,編寫文件時,文件裏面標記utf-8,文件保存也保存爲utf-8. mac用戶cmd默認編碼utf-8,咱們中國經常使用的Windows系統默認gbk編碼


用不一樣的編輯器運行Python腳本的方法

問題四: Windows新建文本文檔不是utf-8編碼格式,報錯:SyntaxError: Non-UTF-8 code starting with '\xc2' in file c:\pyfile\test.txt on l ine 1, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for de tails 解決:打開文本文件另存爲utf-8格式,此爲Python3執行報錯

問題五: Windows新建文本文檔不是utf-8編碼格式,報錯:SyntaxError: Non-ASCII character '\xc2' in file C:\pyfile\test.txt on line 1, bu t no encoding declared; see http://python.org/dev/peps/pep-0263/ for details 解決:打開文本文件另存爲utf-8格式,此爲python2執行報錯


utf-8,通常用3個字節表示一箇中文, gbk 兩個字節一箇中文

chcp 65001 cmd命令行執行能夠修改爲utf-8格式

a.py #!/usr/bin/env python #在Linux中指定解釋器路徑

這樣執行可執行文件 ./a.py 自動去找文件的第一行爲解釋器路徑

 

 


五、輸出print():

5.一、print簡單使用

print() 中間寫上你想要輸出的東西

print(你好) print('你好')

print(666) print('666')

print(你好)會報錯 未定義

數據類型:

'mcw'/ "xiaoma" / '''aaa'''/"""bbb"""       引號引發來的,通常稱爲字符串

                                                            雙引號的意義:print('小"馬') 打印出雙引號,外面用單引號, print("小'馬") 打印出單引號,外面用雙引號。

                                                    三引號的意義:換行 print("""小 名""")

666,              通常稱爲數字或整形

True/False              通常稱爲 布爾類型 print(True) print(False)

python2和python3的輸出區別: py2: print "你好"   py3: print('你好')     Python2.7也支持python3的打印格式了。

5.二、print()函數的解釋

def print(self, *args, sep=' ', end='\n', file=None):
    """
    print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
    默認狀況下,將值打印到流或sys.stdout。
    可選關鍵字參數:
  文件(file):相似於文件的對象(流);默認爲當前的sys.stdout。
  sep:在值之間插入的字符串,默認爲空格。
    結束(end):在最後一個值後追加的字符串,默認爲換行符。
  沖洗(flush=):是否強制沖洗水流。
    """
    pass

5.三、print()換行問題:

在python中,輸出函數老是默認換行,好比說:

for i in range(4):
    print(i)
------------結果:
0
1
2
3

這種輸出太佔「空間」,以下進行不換行輸出
end -- 用來設定以什麼結尾。默認值是換行符 \n,咱們能夠換成其餘字符。

for mcw in range(5):
    print(mcw,end='')
----------------結果:
01234

for mcw in range(5):
    print(mcw,end=' ')
--------------結果:
0 1 2 3 4 

for mcw in range(5):
    print(mcw,end='*')
-----------結果;
0*1*2*3*4*        #每次打印的末尾都打印了*號

但若是,咱們同時運行上面兩段代碼,結果會以下所示,而咱們須要的是在兩次輸出間,實現換行。

for mcw in range(5):
    print(mcw,end=' ')
for mcw in range(5):
    print(mcw,end='*')
------------------結果:
0 1 2 3 4 0*1*2*3*4*

如何實現換行?
1)這時若是在兩次打印中加個打印換行,結果以下:

for mcw in range(5):
    print(mcw,end=' ')
print('\n')
for mcw in range(5):
    print(mcw,end='*')
--------------結果:
0 1 2 3 4 

0*1*2*3*4* 

#結果是多出了空行,由於print()自己就是默認換行的,再加上換行符,至關於換行兩次
2)兩者中間加print(),print()自己自帶換行

for mcw in range(5):
    print(mcw,end=' ')
print()
for mcw in range(5):
    print(mcw,end='*')
-----------------結果:
0 1 2 3 4 
0*1*2*3*4*

for mcw in range(5):
    print(mcw,end=' ')
print("|---")
for mcw in range(5):
    print(mcw,end='*')
------------結果:
0 1 2 3 4 |---     
0*1*2*3*4*     #如結果所示,print是在不管打印與否,是不是打印能顯示的字符仍是空,都會換行

 5.4 print+\r實現覆蓋以前的內容,能夠實現進度條

 

import  time
for i in range(100):
    time.sleep(1)
    msg="%s%%\r"%i
    print(msg,end="")
 

 

 


六、變量

content=5 print(content) 變量的要求:

一、變量名只能包含:字母、數字、下劃線 mcw2_a="小馬and"

二、數字不能開頭

三、不能是Python的關鍵字

字符串乘多少次表示能夠復現多少次

#自我註解:變量三要求mcw2_a="小馬and"

正確案例1:
a=b=c=d=1                #給多個變量賦值一樣的值 print(a,b,c,d) -----------------結果: 1 1 1 1 

正確案例2:
a,b,c,d="mcw1","mcw2","mcw3","mcw4"
print(a,b,c,d)
--------------結果:
mcw1 mcw2 mcw3 mcw4
 
錯誤案例1:
a,b,c,d=0            #給多個變量不能這樣賦值
print(a,b,c,d)
---------------結果:
    a,b,c,d=0
TypeError: 'int' object is not iterable   
#iterable    網絡    可迭代的; 可重複的; 迭代的;

錯誤案例2:
a,b,c,d="xiaoma"
print(a,b,c,d)
---------------結果:
a,b,c,d="xiaoma"
ValueError: too many values to unpack (expected 4) #要解包的值太多(應爲4)參數少了

錯誤案例3:
a,b,c,d="2"
print(a,b,c,d)
----------結果:

a,b,c,d="2"
ValueError: not enough values to unpack (expected 4, got 1)  #將錯誤案例2的改爲2,報錯變了

 

 

 

 

七、輸入input():

user_name=input("請輸入你的姓名:")

message=user_name+" 學生" print(message)

輸入數據按回車輸入結束,並用變量接收輸入的內容

用戶名密碼輸入,判斷後再執行下面的操做或輸出對應的字符串

注意:input輸入獲得的內容永遠是字符串,因此能夠對輸入的內容進行字符串的拼接,可是不能和數字進行運算。若是想進行數字運算,先將輸入的字符串轉換爲數字int()

python2和python3的輸入的區別:python2輸入是 raw_input

#自我註解:須要別人輸入(須要交互)input

八、註釋

#單行註釋

"""

ls

""" 多行註釋

相關文章
相關標籤/搜索