1. 程式人生 > 實用技巧 >Python基礎TASK1:變數與資料型別

Python基礎TASK1:變數與資料型別

python基礎學習TASK1:變數,運算子與資料型別

1.變數

·在使用變數之前,需要對其先賦值。
·變數名可以包括字母、數字、下劃線、但變數名不能以數字開頭。
·Python變數名是大小寫敏感的,foo != Foo。
例:

myTeacher = "老馬的程式人生"
yourTeacher = "小馬的程式人生"
ourTeacher = myTeacher + ',' + yourTeacher
print(ourTeacher)  # 老馬的程式人生,小馬的程式人生

2.資料型別及其轉換

Python中的基本資料型別

1.Number資料型別:

int整型  
float浮點型  
bool布林型  
complex複數型別

2.容器資料型別

1)str 字串型

  '''用引號引起來的就是字串,三種引號:單引號  雙引號  三引號'''

   轉義字元:\   (1) 把有意義的字元轉變為無意義的字元

            (2) 把無意義的字元轉變的有意義

    \n 或者 \r\n : 代表"換行"意思

      \t    : 代表"一個縮排"意思

      \r    : 代表將\r後面得所有字元拉到該行首

三種引號:
(1)單引號:

myTeacher = '老馬的程式人生'
print(myTeacher)
print(type(myTeacher))
老馬的程式人生
<class 'str'>

(2)雙引號:

myTeacher = "'老馬'的程式人生"
print(myTeacher)
print(type(myTeacher))
'老馬'的程式人生
<class 'str'>

(3)三引號支援跨行

字串的格式化:
元字串 r"123":可以讓轉義字串失效.

%d 佔位符 d代表整型資料:

myTeacher = "'老馬'的%d年程式人生" %(3)
print(myTeacher)
print(type(myTeacher))
'老馬'的3年程式人生
<class 'str'>

%f 佔位符 f代表浮點型資料,預設保留6位小數點,f前面有數值,則根據數值是多少保留對應小數點:

myTeacher = "'老馬'的%.1f年程式人生" %(3.22)
print(myTeacher)
print(type(myTeacher))
'老馬'的3.2年程式人生
<class 'str'>

%s 佔位符 代表字串:

myTeacher = "'老馬'的%s年程式人生" %("將近三")
print(myTeacher)
print(type(myTeacher))
'老馬'的將近三年程式人生
<class 'str'>

 

3.list 列表型

特徵:可以獲取和修改資料,排列有序 [ ]
正向下標  從0開始代表第一個數值   1代表第二個數值 往後以此類推
反向下標  從-1開始代表最後一個值  -2代表倒數第二個值 往前以此類推
可用 len 來獲取列表的長度  

4.tuple 元組型

特徵:可以獲取但不能修改資料,排列有序 ( )

  tuplevar = () 這是一個空元祖
  tuplevar = (1) 這是一個整型
  tuplevar = (1,) 這是一個元祖
  綜上所述 : 判斷tuplevar = (?)或tuplevar = (?,)這兩種是不是元組,取決於裡面值是否有逗號,有就是元組 沒有就是別的資料型別
  空元祖可以使用()來表示
  獲取元組中的資料 : 跟列表list的取值一模一樣 (正向下標,反向下標)
修改元組中的值,不可以修改,會進行報錯 

5.set集合型

集合(set)是由一個或數個形態各異的大小整體組成的,構成集合的事物或物件稱作元素或是成員。
基本功能是進行成員關係測試和刪除重複元素。
可以使用大括號 { } 或者 set() 函式建立集合,注意:建立一個空集合必須用 set() 而不是 { },因為 { } 是用來建立一個空字典。
setvar = {}     資料型別顯示是一個dict 字典
setvar = set()    強制轉換成一個空集合的資料型別(只有這一種型別)
 特徵:不可獲取,也不可以修改,無序排列,自動去掉重複資料

6.dict字典型

字典(dictionary)是Python中另一個非常有用的內建資料型別。
列表是有序的物件集合,字典是無序的物件集合。兩者之間的區別在於:字典當中的元素是通過鍵來存取的,而不是通過偏移存取。
字典是一種對映型別,字典用 { } 標識,它是一個無序的 鍵(key) : 值(value) 的集合。
鍵(key)必須使用不可變型別。
在同一個字典中,鍵(key)必須是唯一的。
注意:

1、字典是一種對映型別,它的元素是鍵值對。
2、字典的關鍵字必須為不可變型別,且不能重複。
3、建立空字典使用 { }。

Python中的資料型別轉換

有時候,我們需要對資料內建的型別進行轉換,資料型別的轉換,你只需要將資料型別作為函式名即可。
轉換為整型 int(x, base=10)
轉換為字串 str(object='')
轉換為浮點型 float(x)

自動型別轉換( 針對於Number資料型別來說的 )
   規律: 精度從低到高 bool -> int -> float -> complex
   當兩個不同的資料型別運算時,預設向更高精度轉化

Print函式

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

將物件以字串表示的方式格式化輸出到流檔案物件file裡。其中所有非關鍵字引數都按str()方式進行轉換為字串輸出;
關鍵字引數sep是實現分隔符,比如多個引數輸出時想要輸出中間的分隔字元;
關鍵字引數end是輸出結束時的字元,預設是換行符\n
關鍵字引數file是定義流輸出的檔案,可以是標準的系統輸出sys.stdout,也可以重定義為別的檔案;
關鍵字引數flush是立即把內容輸出到流檔案,不作快取。

練習題

1.怎樣對python中的程式碼進行註釋?

整行註釋:#
多行註釋: ''' '''""" """

2.python有哪些運算子,這些運算子的優先順序是怎樣的?

運算子的優先順序:
一元運算子優於二元運算子。例如3 ** -2等價於3 ** (-2)
先算術運算,後移位運算,最後位運算。例如 1 << 3 + 2 & 7等價於 (1 << (3 + 2)) & 7
邏輯運算最後結合。例如3 < 4 and 4 < 5 等價於 (3 < 4) and (4 < 5)

3.python 中 is, is not 與 ==, != 的區別是什麼?

is, is not 對比的是兩個變數的記憶體地址
==, != 對比的是兩個變數的值
比較的兩個變數,指向的都是地址不可變的型別(str等),那麼is,is not 和 ==,!= 是完全等價的。
對比的兩個變數,指向的是地址可變的型別(list,dict等),則兩者是有區別的。