python入門之各種變量及使用

一、變量

(1) 變量的含義:

   可以改變的量,具體指的是內存的一段空間
   可以說它是以個代表,代表很多數,代表其他東西。比如說桌子,會代表各種類型的桌子。

(2) 變量的聲明:

   變量的聲明有很多種方式如 
   1)   a = 1		2) a,b = 3,4     3)a = b = 33 
   		b = 1		   #把3賦值給a,	 將33這個值給a和b
   		print(a,b)     #將4賦值給b,

(3)變量的命名:

   字母數字下劃線,數字不能放最前
   嚴格區分大小寫,關鍵字符不出現
   變量命名有意義,中文字符沒的見
   在python中查看所有關鍵字
import keyword
res = keyword.kwlist
print(res)
'''
['False', 'None', 'True', 'and', 'as', 'assert',
 'break', 'class', 'continue', 'def', 'del', 'elif',
 'else', 'except', 'finally', 'for', 'from', 'global', 
 'if', 'import', 'in', 'is', 'lambda', 'nonlocal','not', 
 'or', 'pass', 'raise', 'return', 'try', 'while',
 'with', 'yield']

'''

utf-8 國際標準編碼(可編程的Unicode編碼集)唄稱爲萬國碼:用3個字節代表一箇中文用一個字節代表一個英文或符號。 GBK,在國際編碼中用2個字節代表一箇中文。用一個字節代表一個英文或者符號代表一個字節 用中文命名變量,在語法上允許,但嚴格禁止。

(4)變量的交換

在python中有自己獨特的變量交換方式

# 這是python獨特的變量交換方法
a = 10
b = 11
a,b = b,a
print(a,b) 
# 通用方法是找個中間變量。計算機不會像人一樣思考,這種情況
# 就像是倆人要通過獨木橋過對岸一樣。得讓一個人先有地方站
# 也就是說要設置一箇中間變量temp
a = 33   	# 將33賦值給a
b = 55   	# 將55賦值給b
temp = a 	# 先讓a進入一個temp中
a = b    	# 再將b放入a的位置,此時啊已經跑到temp中,b已經跑到a那
b = temp 	#再將在temp中的a放入到b中

python中沒有定義常量的用法。通常默認將變量名全部大寫的視爲常量如身份證號
ID = “210201199810102014”

二、python的六大標準數據類型

2.1、Number數字類型(int float bool complex)

2.1.1、int 整型(正整數 、0、 負整數)

呃這裏也就介紹一些函數的用法其他的倒也沒啥
type()函數用來獲取變量的對象。
id() 獲取該變量所指向的那個值的地址
在python中
0b表示2進制。 如:0b10101
0o表示8進制。 如:0o12712
0d表示10進制。 如:0d999
0x表示16進制。 如:0xABCD
如果想了解的話可以參考王爽老師編著的《彙編語言》

2.1.2、float浮點型(小數類型)

兩種表示方法一種小數表示一種是科學技術法

2.1.3、bool布爾類型(True False)

默認True的值爲1,False的值爲0

2.1.4、complex(複數類型)

兩種表示方式:
a + bj是一種另一種用comple(x,y)表示x+yj

2.2、容器類型數據(str、dict、set、list、tuple)

2.2.1、字符串類型str

用引號引起來的就是字符串
單引號’ ’ 、雙引號“”、三引號’’’
字符串的特性:可獲取,不可修改,有序
字符串不能夠修改
這裏要介紹下轉義字符:
轉義字符:將有意義的字符變得無意義,將無意義的字符變得有意義
語法:+ 某字符
\n:代表換行
\t:代表一個縮進,水平製表符
\r:將\r後面的字符串拉到當前行首
轉義字符在字符串中出現時會按轉義字符的意思表示。
所以請在python上輸出如下內容

# (1)單引號引起來的字符串
strvar = '今天天氣有霧霾'
print(strvar,type(strvar),id(strvar))

# (2)雙引號引起來的字符串
strvar = "小樓昨夜又東風"
print(strvar,type(strvar),id(strvar))
strvar = "小樓昨'夜'又東風" # 外面是雙引號,裏面需要單引號總之兩者要分開輸入
print(strvar)
strvar = "故國不堪回首\n月明中"
print(strvar)
strvar = "故國不堪回首\r\n月明中"
print(strvar)
strvar = "故國不堪回首\t月明中"
print(strvar)
strvar = "故國不堪\n回首\r月明中"
print(strvar)
strvar = "故國不堪回\"首\"月明中"  # 將有意義的雙引號變得無意義
print(strvar)
print(strvar,type(strvar),id(strvar))
#回憶下type是什麼意思,id是什麼意思
# (3)三引號引起來的字符串 (三引號字符串,支持跨行操作)
strvar = """
本來無一'物',
何處惹塵"埃"。
"""
print(strvar)
strvar = '''
 牀前明月光,
地上鞋兩雙
'''
print(strvar)

# (4)元字符串 r + "字符串"  (讓字符串裏面的轉義字符失效)
strvar = r"今天拉肚\r子\t了\n麼?"
print(strvar)
(5)字符串的格式化
"""
%d : 整型佔位符  
%f :浮點型佔位符
%s :字符串佔位符

語法: 字符串  %  (值1,值2,。。。。。)  
"""
# %d 
strvar = "誰昨天買了%d個娃娃"    %   (5)
print(strvar)
# %2d 站兩個位置,默認居右
strvar = "那個誰昨天買了%2d個娃娃"   %   (5)
print(strvar)
# %-4d 站兩個位置,默認居左
strvar = "有個誰昨天買了%-4d個娃娃"   %   (5)
print(strvar)

# %f 小數點後默認精度保留6位
strvar = "華爲出了一款摺疊手機,價格爲%f" % (9.99)
# %f 精確位數的時候,存在四捨五入
strvar = "華爲出了一款摺疊手機,價格爲%.1f" % (9.99)
print(strvar)

# %s
aa = "劉德華是一個大帥鍋"
strvar = "%s" % (aa)
print(strvar)

# 綜合案例
strvar = "老闆給開工資了,一共%.2f ,看好了一輛車,價格%d元,心情在%s" % (9.99,10,"崩潰的邊緣")
print(strvar)
# 在直接做輸出時是這個樣子的
print("老闆給開工資了,一共%.2f ,看好了一輛車,價格%d元,心情在%s" % (9.99,10,"崩潰的邊緣"))
# 當佔位符只有一個時可以不用括號。

2.2.2、列表類型list與元組類型tuple

列表的特性:可獲取、可修改、有序

# 聲明一個空列表
listvar = []
print(listvar,type(listvar))
# (1)列表的獲取,自左向右索引(相應元素的下標)從0開始
# 自右向左索引從-1開始
#          0   1     2    3     4     5
listvar = [5,False,2-4j,5.16,"呵呵","嘿嘿"]
#         -6  -5    -4   -3    -2    -1
res = listvar[4]
print(res)
res = listvar[-2]
print(res)
res = listvar[-1]
print(res)
# (2)列表的修改
listvar = [5,False,2-4j,5.16,"呵呵","嘿嘿"]
listvar[-2] = 3.14
print(listvar)
listvar[1] = True
print(listvar)
#len()函數 計算容器類型數據中元素的個數
lengthvar = len(listvar)
print(res)
res = listvar[lengthvar-1] #listvar[5]
print(res)

元組:
元組的特性:可獲取,不可修改,有序
區分是否是元組的標誌性符號是逗號,聲明一個空元組可以用()

tuplevar = ()
print(tuplevar,type(tuplevar))
tuplevar = (1,)
tuplevar = 1,2,3
print(tuplevar,type(tuplevar))

# 元組的獲取
tuplevar = ("白百合","李小璐","張柏芝","馬蓉","洪世賢")
res = tuplevar[1]
print(res)
# error 元組不能夠修改
'''
tuplevar[-1] = 123
print(tuplevar)

2.2.3、集合類型set與字典類型dict

集合類型set:
集合特徵: 自動去重,無序
集合的用途:用於做交集,差集,並集,補給(做交叉並補的)

# 1.集合無序
setvar = {"劉德華","張學友","郭富城","王文"}
# print(setvar)
# 每次輸出的內容都不相同
# (1)因爲無序無法通過索引獲取值
# print(setvar[0])
# (2)因爲無序無法通過索引修改值
# setvar[1] = "123"

# 2.集合自動去重
setvar = {"王寶強","馬蓉","宋哲","宋哲"}
print(setvar,type(setvar))

# 3.定義一個空集合
setvar = {}
print(setvar,type(setvar))
# 其類型是空字典,不是空集合
setvar = set()
print(setvar,type(setvar))
#定義一個空集合可以用set()來定義

字典類型:dict
字典特徵:鍵值對存儲數據,有序鍵和值之間用冒號隔開,鍵值對之間用逗號隔開


瞭解:3.6版本,把字典的字面順序記錄下來,在從內存拿去數據的時候,根據字面順序重新排序,所以看起來像有序
3.6版本之前都是無序的,3.6版本經過算法優化變成有序,但本質上無序
(不可變的數據(可哈希)):Number(int float bool complex) str tuple
(可變的數據(不可哈希)): list set dict
11111111111111111111111111111111111111111111111111111111111111數字分割線

集合、列表、字典不能拿來做字典的鍵:也就是說這個鍵值得是唯一的不可變的。

# 語法: dictvar = {"a":1,"b":2,"c":3}
dictvar = {"top":"狗頭","middle":"安其拉","bottom":"魯班七號",'jungle':"達摩","support":"蔡文姬"}
print(dictvar)

# 獲取字典當中的值
res = dictvar['bottom']
res = dictvar['jungle']
print(res)

# 修改字典當中的值
dictvar['support'] = "婕拉"
print(dictvar)

# 字典的鍵必須是不可變的
'''在命名字典鍵的時候,推薦使用字符串,按照變量命名的方式來做'''
dictvar = {1:1,(1,2,3):3,False:4,3.14:999,4-2j:888,"王寶強":"大帥鍋"}
print(dictvar)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章