what's the python之變量、基本數據類型

what's the 變量?

  Python 中的變量賦值不須要類型聲明。python

  變量在內存中建立,包括變量的標識,名稱和數據。app

  變量在使用前都必須賦值,變量賦值之後該變量纔會被建立。spa

  等號(=)用來給變量賦值。code

  變量的定義:name=Jack  name即變量名,Jack即變量值。對象

  python中容許同時爲多個變量賦值,如blog

a=b=c=1#a=1,b=1,c=1
a,b,c=1,2,3#a=1,b=2,c=3
'''
變量的賦值方式有不少種
  鏈式賦值:a=b=c=d=4    
  增量賦值:即將兩個變量的值進行交換
'''
x=2
y=4
x,y=y,x

  值的解壓:索引

msg='hello'
a,b,c,d,e=msg
print(a,b,c,d,e)

a,_,_,_,e=msg
a,*_,e=msg
print(a)#'h'
print(e)#'o'

dic={'a':1,'b':2,'c':3}
x,y,z=dic
print(x,y,z)#'a','b','c'

 

聲明變量注意事項內存

  1. 變量名只能是 字母、數字或下劃線的任意組合
  2. 變量名的第一個字符不能是數字
  3. 如下關鍵字不能聲明爲變量名['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']   

變量的比較:ci

  is比較的是id,只要id相同就說明數據指向同一個內存地址,全部數據都相同。==比較的是值,值相同並不說明數據相同rem

 

程序交互:程序與用戶之間的交互。如QQ界面的輸入帳戶密碼以登錄,就是一種程序交互。 

  執行輸出

name = input("What is your name?")
age = input("How old are you?")
hometown = input("Where is your hometown?")
print("Hello ",name , "your are ", age , "years old, you came from",hometown)

代碼若很複雜,爲了不搞錯或遺忘,可在相應代碼後加註釋,單行註釋爲代碼後加#,再輸入註釋,多行註釋就用三個引號引發來'''  '''

 


 

基本數據類型

基本數據類型分爲數字、字符串str、列表list、字典dict、元祖tuple、集合set、布爾值

  數據類型分爲可變數據類型不可變數據類型

  • 可變數據類型:在id不變的狀況下,值value能夠發生改變,如列表、字典、元祖、集合
  • 不可變數據類型:值value改變時id也會發生改變,如數字、字符串、布爾

   python 的全部數據類型都是類,能夠經過 type() 查看該變量的數據類型:

  注:可變類型又可稱爲不可hash類型,不可變類型又可稱爲可hash類型。

 

數字:分爲整型int和浮點型float

  整型int(即整數形式):level=20;

  浮點型float(即帶有小數點的類型):weight=65.5  price=13.5等等

 

字符串str:

  描述性的數據,必須包在引號裏面(英文格式,不管單雙三引均可以) name='jack' ,sex='male'     

  字符串可進行拼接,如

msg1='hello'
msg2=' world'
msg3=msg1+msg2
print(msg3)#'hello world'

 

列表list:

  包含在[ ]內,內部的元素能夠是字符串、數字、列表、元祖、集合、字典,各自以逗號隔開。

  用途——存多個值,能夠修改

list1=[3,2,1,'hello']
#增長元素
list1.append('world')#[3,2,1,'hello','world']
#刪除元素
list1.remove(3)#[2,1,'hello','world']
del list[2]#[1,'hello','world']
#修改元素的值,中括號中的0是索引,表明第一個位置,python中的索引是由0開始的
list1[0]=8#[8,'hello','world']

 

字典dict(無序):

  定義在{ }內,逗號分割,每個元素的形式都是key:value。

  用途——存多個值,這一點與列表相同,值能夠是任意數據類型。

  特徵:每個值都一個對一個的對應關係,即key,強調一點,key必須是不可變類型:字符串,數字。

dic={'name':jack,'age':17,'hobby':['girls','money','delicious food']}
#增長
dic['sex']='male'
#刪除
del dic[‘age']
#修改
dic['age']=18

 

元祖tuple

  能夠存放多個值。元祖是不可變類型,更多的是用來查詢,元祖的寫法與列表類似,只是將[ ] 改成( )。元祖也能夠做爲字典的key。

t=(1,[1,3],'sss',(1,2)) #t=tuple((1,[1,3],'sss',(1,2)))
print(type(t))#<class 'tuple'>

  雖然元祖爲不可變類型,可是隻要元祖內部的元素的id不發生變化,其內部元素髮生變化是容許的,如列表爲元祖的元素,列表內元素髮生變化但id不變是能夠容許的。

 

集合set

  定義在{ }內,能夠包含多個元素,用逗號分隔。集合的元素必須是不可變類型,在集合中不會出現重複的元素(集合具備自動去重的功能),集合是無序的。

 

布爾值:

  布爾值只有兩種——True和False,布爾值的做用就是用來判斷。

 

總結

  變量賦值不須要聲明類型,很是好用。

  數字類分爲整型和浮點型,是不可變數據類型,改變數字數據類型會分配一個新的對象。

  列表用 "[ ]" 標識,內部元素用逗號隔開。

  元組用 "( )" 標識,內部元素用逗號隔開。可是元組不能二次賦值,至關於只讀列表。

  集合用 "{ }" 標識,內部元素用逗號隔開,集合中不會出現重複的元素,集合是無序的。

  字典用 "{ }" 標識,字典由索引 key 和它對應的值 value 組成,字典是無序的。

  列表能夠直接賦值,元組不能夠賦值,字典按照 dict[k]=v 的方式賦值。

  索引的下標是從0開始算起。

相關文章
相關標籤/搜索