python3 基礎教程

2021-08-10 01:54:44 字數 4991 閱讀 6295

一、基礎語法

1. 多行語句

在 , {}, 或 () 中的多行語句,不需要使用反斜槓(\),例如

total = ['item_one', 'item_two', 'item_three',

'item_four', 'item_five']

2. 空行

函式之間或類的方法之間用空行分隔,表示一段新的**的開始。類和函式入口之間也用一行空行分隔,以突出函式入口的開始。

空行與**縮排不同,空行並不是python語法的一部分。書寫時不插入空行,python直譯器執行也不會出錯。但是空行的作用在於分隔兩段不同功能或含義的**,便於日後**的維護或重構。

記住:空行也是程式**的一部分。

3. 同一行顯示多條語句

import sys; x = 'runoob'; sys.stdout.write(x + '\n')
4. print輸出

print 預設輸出是換行的,如果要實現不換行需要在變數末尾加上end=""

5. import匯入模組

在 python 用 import 或者 from...import 來匯入相應的模組。

將整個模組(somemodule)匯入,格式為: import somemodule

從某個模組中匯入某個函式,格式為: from somemodule import somefunction

從某個模組中匯入多個函式,格式為: from somemodule import firstfunc, secondfunc, thirdfunc

將某個模組中的全部函式匯入,格式為: from somemodule import *

二、基本資料型別

在 python 中,變數就是變數,它沒有型別,我們所說的"型別"是變數所指的記憶體中物件的型別。

python3 中有六個標準的資料型別:

1. number

(1)支援型別:python3 支援int、float、bool、complex(複數)

(2)基本運算:+,-,*,/(返回浮點數),//(返回整數),**(乘方),%(取模)

(3)查詢資料型別:

內建的 type() 函式可以用來查詢變數所指的物件型別,此外還可以用 isinstance 來判斷

type()不會認為子類是一種父類型別,isinstance()會認為子類是一種父類型別。

class a:

pass

class b(a):

pass

isinstance(a(), a) # returns true

type(a()) == a # returns true

isinstance(b(), a) # returns true

type(b()) == a # returns false

(4)注意

2. 字串(string)

字串寫在單引號或者雙引號之間。

(1)擷取字串

變數[頭下標:尾下標]

str = 'runoob'

print (str) # 輸出字串

print (str[0:-1]) # 輸出第乙個到倒數第二個的所有字元

print (str[0]) # 輸出字串第乙個字元

print (str[2:5]) # 輸出從第三個開始到第五個的字元

print (str[2:]) # 輸出從第三個開始的後的所有字元

print (str * 2) # 輸出字串兩次

print (str + "test") # 連線字串

(2)轉義字元「\"

python 使用反斜槓(\)轉義特殊字元,如果你不想讓反斜槓發生轉義,可以在字串前面新增乙個 r,表示原始字串,轉義字元也作為續行符。

>>> print('ru\noob')

ruoob

>>> print(r'ru\noob')

ru\noob

(3)注意

3. 列表(list)

注意:

4. 元組(tuple)

元組寫在圓括號 「( )」 裡,元素之間用逗號隔開。

元組與列表類似,支援索引和切片,其中元素不可以改變,不過可包含可變的物件,如列表。

字串可視為特殊元組。

構造包含 0 個或 1 個元素的元組比較特殊,所以有一些額外的語法規則:

tup1 = ()    # 空元組

tup2 = (20,) # 乙個元素,需要在元素後新增逗號

5.集合(set)

定義:集合是乙個無序不重複的序列。

基本功能:進行成員關係測試和刪除重複元素。

建立:可以使用大括號 或者 set() 函式建立集合,注意:建立乙個空集合必須用set() 而不是 ,因為 是用來建立乙個空字典。

#!/usr/bin/python3

student =

print(student) # 輸出集合,重複的元素被自動去掉

# 成員測試

if('rose' in student) :

print('rose 在集合中')

else :

print('rose 不在集合中')

# set可以進行集合運算

a = set('abracadabra')

b = set('alacazam')

print(a)

print(a - b) # a和b的差集

print(a | b) # a和b的並集

print(a & b) # a和b的交集

print(a ^ b) # a和b中不同時存在的元素

輸出:

rose 在集合中

6. 字典(dictionary)

列表是有序的物件結合,字典是無序的物件集合。兩者之間的區別在於:字典當中的元素是通過鍵來訪問的,而不是通過偏移訪問。

字典是一種對映型別,字典用""標識,它是乙個無序的鍵(key) : 值(value)對集合。

#!/usr/bin/python3

dict = {}

dict['one'] = "1 - 菜鳥教程"

dict[2] = "2 - 菜鳥工具"

tinydict =

print (dict['one']) # 輸出鍵為 'one' 的值

print (dict[2]) # 輸出鍵為 2 的值

print (tinydict) # 輸出完整的字典

print (tinydict.keys()) # 輸出所有鍵

print (tinydict.values()) # 輸出所有值

7.資料型別轉換

函式描述

int(x [,base])

將x轉換為乙個整數

float(x)

將x轉換到乙個浮點數

complex(real [,imag])

建立乙個複數

str(x)

將物件 x 轉換為字串

repr(x)

將物件 x 轉換為表示式字串

eval(str)

用來計算在字串中的有效python表示式,並返回乙個物件

tuple(s)

將序列 s 轉換為乙個元組

list(s)

將序列 s 轉換為乙個列表

set(s)

轉換為可變集合

dict(d)

建立乙個字典。d 必須是乙個序列 (key,value)元組。

frozenset(s)

轉換為不可變集合

chr(x)

將乙個整數轉換為乙個字元

unichr(x)

將乙個整數轉換為unicode字元

ord(x)

將乙個字元轉換為它的整數值,ascii碼

hex(x)

將乙個整數轉換為乙個十六進製制字串

oct(x)

將乙個整數轉換為乙個八進位制字串

8. 例項

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

# 生成 0 ~ 9 之間的隨機數

# 匯入 random(隨機數) 模組

import random

print(random.randint(0,9))

多行注釋用三個單引號 ''' 或者三個雙引號 """ 將注釋括起來

python3基礎教程筆記

問題 unicode和utf 8和assci之間的關係 列表元素拼接 join lst 列表方法 增 lst.insert 3,n 插入 刪lst.clear 清空 lst.pop 末尾刪 lst.remove a 刪除第乙個指定元素 複製 b lst.copy 數數 lst.count n 擴充套...

Python3基礎教程字典的使用

字典的關鍵字 dict 格式 注意 鍵是具有唯一性的,不能更改,通常使用字串和數字,也可以是元組 值可以是任何資料 數字 字串 列表 元組等資料格式 字典的操作 a print len a 可以獲取字典的長度 通過鍵獲取資料 也可以使用get的方式去獲取 1 直接通過鍵獲取 如果沒有值列印 就會報錯...

python基礎教程3

1.序列解包 賦值時可以多個變數同時賦值。x,y,z 1,2,3 print x,y,z 1 2 3還可以交換變數的值 x,y y,x print x,y,z 2 1 3實際上,這裡執行的操作稱為序列解包 或可迭代物件解包 將乙個序列 或任何可迭代 物件 解包,並將得到的值儲存到一系列變數中。下面用...