一、Python 2.x vs 3.x差別
1.print在python2.x是語句,在python3.x是print()函數
2.輸入函數在python2.x中為raw_input(),在python3.x中為input();
3.python3.x全部字元集都是unicode,而在python2.x中是ascii編碼,需要設定
#-*- coding:utf-8 -*-,中文才不會亂碼
4.python2.x一些庫名在python3.x的更改
python2.x | _winreg | ConfigParser | copy_reg | Queue | SocketServer | markupbase | repr | test.test_support |
python3.x | winreg | configparser | copyreg | queue | socketserver | _markupbase | reprlib | test.support |
Python2.x 與python3.x庫方法也有部分不同,支援子產品也有變化,随後慢慢展現。
二、安裝Pytho
安裝環境不同,依據自己喜好,暫略……
三、變量
1、變量聲明
- 變量是所有python資料儲存為的記憶體對象;變量事實上是指向記憶體對象的引用;
- "="用于将變量名與記憶體中的某個對象綁定:如果對象實作存在,就直接進行綁定;否則,則由"="建立引用的對象,變量名也是對象存在記憶體,比如:name='jhon',name這個指針指向jhon,name='tom'的時候,name是指針指向tom,但是jerry仍在記憶體中存放着,隻是沒有被變量名指向,到一定時候會被垃圾收集器回收,和java有點像。其中當test='jerry'時,test和name這兩個變量名指向記憶體的位址是一樣的。id(test),id(name),變量名是記憶體引用的辨別或符号。
2、變量定義規則
- 變量名隻能是 字母、數字或下劃線的任意組合
- 變量名的第一個字元不能是數字
- 以下關鍵字不能聲明為變量名
['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']
3、約定俗稱的變量命名方式
以下兩種方法一種即可,随你喜歡、習慣!
- 使用下劃線'_'作為連接配接,如 name_variables
- 使用大小寫,稱為駝峰法,如 NameVariables,nameVariables
- 慎用小寫字母l和大寫字母O,因為可能被看錯為1和0;
4、變量命名慣例
- 以單一下劃線開頭的變量名(_x)不會被from module import * 語句導入
- 以兩個下劃線開頭但結尾沒有下劃線的變量名(__x)是類的本地變量
- 前後有雙下劃線的變量名(__x__)是系統定義的變量名,對python解釋器有特殊意義
- 互動式模式下,變量名"_"用于儲存最後表達式的結果
四、字元串
字元串就是一系列字元在python中,用引号括起來的都是字元,其中包括單引号和雙引号。
1、使用方法修改字元串的大小寫
方法 | 作用 |
title() | 以首字母大寫顯示每個單詞 |
upper() | 全部大寫顯示每個單詞 |
lower() | 全部小寫顯示每個單詞 |
示例如下:
執行結果為:
Python`S World
PYTHON`S WORLD
python`s world
2、合并拼接字元串
1、python使用加号:+ 來合并字元串,并使用title()等方法顯示合适的格式;
2、字元串拼接之間需要輸出的内容用雙引号括起來;
注:該示例中有中文,在python2.x中不能正常顯示,需要調整編碼;在開頭聲明編碼格式#coding:utf-8;
3、使用制表符或換行符來添加空白
- 空白泛指任何非列印字元,如空格、制表符、換行符/可以使用空白來組織輸出,使其更易懂。
- 要在字元串中使用制表符,可使用字元組合\t,要在字元串中使用換行符,可使用組合字元\n來實作。
4、删除空白