1. 程式人生 > >python簡介和基礎

python簡介和基礎

Python 簡介

Python 是一個高層次的結合瞭解釋性、編譯性、互動性和麵向物件的指令碼語言。
Python 的設計具有很強的可讀性,相比其他語言經常使用英文關鍵字,其他語言的一些標點符號,它具有比其他語言更有特色語法結構。

  • Python 是一種解釋型語言: 這意味著開發過程中沒有了編譯這個環節。類似於PHP和Perl語言。
  • Python 是互動式語言: 這意味著,您可以在一個Python提示符,直接互動執行寫你的程式。
  • Python 是面嚮物件語言: 這意味著Python支援面向物件的風格或程式碼封裝在物件的程式設計技術。
  • Python 是初學者的語言:Python 對初級程式設計師而言,是一種偉大的語言,它支援廣泛的應用程式開發,從簡單的文書處理到 WWW瀏覽器再到遊戲.

Python 發展歷史

Python 是由 Guido van Rossum 在八十年代末和九十年代初,在荷蘭國家數學和電腦科學研究所設計出來的。
Python 本身也是由諸多其他語言發展而來的,這包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和其他的指令碼語言等等。
像 Perl 語言一樣,Python 原始碼同樣遵循 GPL(GNU General Public License)協議。
現在 Python 是由一個核心開發團隊在維護,Guido van Rossum 仍然佔據著至關重要的作用,指導其進展。

Python 特點

  • 1.易於學習:Python有相對較少的關鍵字,結構簡單,和一個明確定義的語法,學習起來更加簡單。
  • 2.易於閱讀:Python程式碼定義的更清晰。
  • 3.易於維護:Python的成功在於它的原始碼是相當容易維護的。
  • 4.一個廣泛的標準庫:Python的最大的優勢之一是豐富的庫,跨平臺的,在UNIX,Windows和Macintosh相容很好。
  • 5.互動模式:互動模式的支援,您可以從終端輸入執行程式碼並獲得結果的語言,互動的測試和除錯程式碼片斷。
  • 6.可移植:基於其開放原始碼的特性,Python已經被移植(也就是使其工作)到許多平臺。
  • 7.可擴充套件:如果你需要一段執行很快的關鍵程式碼,或者是想要編寫一些不願開放的演算法,你可以使用C或C++完成那部分程式,然後從你的Python程式中呼叫。
  • 8.資料庫:Python提供所有主要的商業資料庫的介面。
  • 9.GUI程式設計:Python支援GUI可以建立和移植到許多系統呼叫。
  • 10.可嵌入: 你可以將Python嵌入到C/C++程式,讓你的程式的使用者獲得”指令碼化”的能力。

Python 變數

變數儲存在記憶體中的值。這就意味著在建立變數時會在記憶體中開闢一個空間。
基於變數的資料型別,直譯器會分配指定記憶體,並決定什麼資料可以被儲存在記憶體中。
因此,變數可以指定不同的資料型別,這些變數可以儲存整數,小數或字元。

變數的命名規則

  •  名字要:見名知意
        可以由字母,下劃線和數字組成
        不能以數字開頭
        不能和關鍵字重明
  • 駝峰命名法
        1.大駝峰:每一個單詞的首字母都大寫
        FirstName LastName
        2.小駝峰:第一個單詞以小寫字母開始,後續單詞的首字母大寫
        firstName lastName

變數的型別

在 python 中定義變數是不需要指定型別(在其他很多高階語言中都需要)
資料類新可以分為數字型和非數字型

  1. 數字型

    • 整型(int)
    • 浮點型(float)
    • 布林型(bool)真 True 非 0 數 — 非 0 即真
  2. 非數字型
    • 字串
    • 列表
    • 元組
    • 字典

格式化輸出

格式化字串 含義
%s 字串
%d 有符號十進位制整數
%06d 表示輸出的整數顯示位數字,不足的地方使用0填充
%f 浮點數,%.02f 表示小數點後只顯示兩位
%%

輸出%

字串操作

字串定義與轉義字元
字串的定義有三種方式:
1:str1 = 'our company'
2:str2 = "our company"
3:str3 = """our company"""
轉義字元:
一個反斜線加一個單一字元可以表示一個特殊字元,通常是不可列印的字元
\n代表換行符
\"代表雙引號本身
\t代表tab符
\'代表單引號本身
其中三重引號可以作為塊註釋(多行程式碼註釋),也可以作為函式的doc文件,也可以作為字串格式化

字串的特性

  • 索引
    s = "hello"


    >>> s = "hello"
    # 正向索引
    >>> s[1]
    'e'
    >>> s[0]
    'h'
    >>> s[4]
    'o'

    # 反向索引
    >>> s = "hello world"
    >>> s[-1]
    'd'
    >>> s[-2]
    'l'
    >>> s[-3]
    'r

  • 切片
    [start:end:step]   # 從start開始到end-1結束, 步長為step;
        - 如果start省略, 則從頭開始切片;
        - 如果end省略, 一直切片到字串最後;
    s[1:]
    s[:-1]
    s[::-1]    # 對於字串進行反轉
    s[:]         # 對於字串拷貝
  • 成員操作符
  •  

    >>> s = "hello"
    >>> 'h' in s
    True
    >>> 'hel' in s
    True
    >>> 'oo' in s
    False
    >>> 'h' not in s
    False
    >>> 'oo' not in s
    True

  • 字串連線
  • >>> a = "hello"
    >>> b = "python"
    >>> print("%s %s" %(a, b))
    hello python
    >>> a + b
    'hellopython'
    >>> a + " " +b
    'hello python'

  • 字串的重複
  • >>> "*"*10 + "學生管理系統" + "*"*10
    '**********\xe5\xad\xa6\xe7\x94\x9f\xe7\xae\xa1\xe7\x90\x86\xe7\xb3\xbb\xe7\xbb\x9f**********'
    >>> print("*"*10 + "學生管理系統" + "*"*10)
  • 字串的常用方法
  • 'isalnum'   是否為字母,數字
    'isalpha'   是否由字母組成
    'isdecimal' 是否由十進位制數字組成
    'isdigit'   十進位制數字判斷
    'isidentifier'  是否字串是否以字母開頭
    'islower'   小寫字母判斷
    'isnumeric' 檢測變數是否為數字或數字串
    'isprintable'   是否可輸出判斷
    'isspace'   空格判斷
    'istitle'   標題判斷
    'isupper'   大寫字母判斷
    'lower'     將字串變為小寫
    'upper'     將字串變為大寫
    'title'     變為title格式
    'swapcase'  大寫變小寫,小寫變大寫
  • 字串的開頭和結尾匹配       filename.endswith       filename.startwith
  • 字串的搜尋和替換              find     查詢        replace      替換           count    計數
  • 字串的分離與拼接              spilt      變數名.spilt('指定分割符')            join       ''.join(變數名)