python无实际意义的语句_没有学不会的python--认识简单的数据类型
先提一下肛
相信很多同學都聽過數據類型這個詞吧?無論是零基礎還是有其他編程語言的同學,對這個詞都不會陌生。基本上來說,無論什么教程,都是會把這個數據類型提前拿出來講透,因為這個萬一不吃透,后面的學習無法開展下去。
先看下概念描述:數據類型在數據結構中的定義是一組性質相同的值的集合以及定義在這個值集合上的一組操作的總稱。
可能很多同學就一臉懵逼了,這段話的每個詞我都了解,我也知道它是什么意思,但是我腦子里怎么就好像理解不了呢?
簡單翻譯下:只要抓住兩個關鍵詞,性質相同以及一組操作,就懂得核心了。
做幾個例子:
好了,你說的例子我明白了,就是一類東西的歸類唄。那這個跟python的數據類型有什么關系,我還是不明白python的數據類型是啥。
在知道python的數據類型是啥之前,我們先了解下有啥。python目前有以下幾種數據類型:
1、Booleans[布爾型]
2、Numbers[數值型]
3、Strings[字符串型]
4、Bytes[字節]
5、Lists[列表]
6、Tuples[元組]
7、sets[集合]
8、Dictionaries[字典]
簡單的點一下各數據類型是什么。數字類型說白了就是由一堆阿拉伯數字組合成的,這些數據類型的個體(比如動物是一類統稱,某條貓就是動物的一個個體)可以進行一些加減乘除等運算操作。
字符串說白了就是可以由任何字母數字中文韓文等等組合而成的一連串符號。字符串可以用來表述我們想要傳遞給別人的想法。
布爾型說白了就是代表真假的兩個符號,比如True,Flase。一般用于條件判斷語句中,前者表示真,后者表示假。
字節型是一種特殊的類型,實際開發中接觸的不多,但是無處不在,我們前面提到的字符串,數字等類型都可以通過轉換得到字節序列。我們可以簡單的認為,字節型就是其它數據類型的另一種表達方式。
列表,元祖,集合,字典屬于復合類型,就是由其它類型組合而成的一種數據類型,這幾個類型稍微比較復雜一點,我們下一章節講,這章主要講簡單的數據類型。
現在代入上面那張圖,你能在宏觀上理解,編程語言中的數據類型,到底是什么玩意了嗎?
如果還不理解,沒關系,我們接著往下走。如果理解了,不好意思,你還是要往下走,從實踐中感受一下。
闖一下關東
這一節我們直接上手代碼,不管三七二十一,練練手再說。
真與假
在開發過程中,你會遇到很多需要判斷條件的邏輯問題,這個時候我們往往通過真與假來判斷條件是否成立。
先打開的你pycharm,輸入以下代碼并運行,如果不知道怎么新建代碼和運行,請看前一章節,后面都不在累述此類問題。如果看代碼有疑惑是很正常,看不懂沒關系,關鍵是動起你的手照著敲起來。
注意不要把輸出結果也復制了
#print是用來輸出內容的,會輸出括號中的內容
print("print(1)輸出的是:1")
"""
boolean型初步認識,這里先解釋一下>=表示大于等于,其他類推
"""
print("我們都知道1是比0大的,所以1>=0是:")
print (1 > 0)
print("我們都知道1是比0大的,所以1==0是:")
print (1 == 0)
print("我們都知道1是比0大的,所以1<=0是:")
print (1 < 0)
# if是條件判斷語句,我們只需要簡單的知道,if后面的語句返回的是真值,就會執行if里面的語句塊
if 1 > 0:
print("得出結論:1是比0大的")
else:
print("難道1不比0大嗎?")
if True:
print("如果條件判斷是True,就是真")
if False:
print("因為條件判斷是False,所以這條語句不會執行")
#type()是一個內置函數,即python自帶的函數,用來獲取對象的數據類型。
print(type(True))
print(type(False))
print(type(1>0))
上述代碼運行后,輸出以下結果:
print(1)輸出的是:1
我們都知道1是比0大的,所以1>=0是:
True
我們都知道1是比0大的,所以1==0是:
False
我們都知道1是比0大的,所以1<=0是:
False
得出結論:1是比0大的
如果條件判斷是True,就是真
代碼解析:
1、上述print()函數是用來輸出內容到控制臺的,我們一般用它來輸出一些內容,更多的時候是用來觀察我們的程序是不是運行正常,比如我們假設a=1,所以print(a)應該輸出1但是卻輸出了2,那么就說明a的值不是1,不是我們預期的那樣。
2、通過1>=0,1==0,1<=0我們知道,>=,==,<=這些符號是比較符號,它們的運算結果是比較兩個對象(數值或者字符串都行)的大小,得到的是布爾型。
3、if語句塊通過布爾型決定執行哪個語句塊,我們不關心if,我們只需要知道布爾型是用來做邏輯判斷的。
4、最后我們通過type()函數知道了True,False是布爾型。那為什么1>0也是布爾型呢?因為1>0實際上是返回了True,所以它也是布爾型。
字符串
字符串在我們開發過程中,是一個逃不掉的數據類型,無論我們做什么功能開發都好,字符串都是不可或缺的一員。我們常用來輸出一些內容,以供我們觀察程序的運行情況。everybody,動起你的手,敲出以下代碼。
"""
我們常用字符串來表達一系列內容
"""
#字符串通常是被""或者''包裹。
print("字符串")
print('字符串')
print("我說:'不是吧'")
#字符串是str類型
print(type("字符串"))
#"""
字符串可以做很多騷操作,都是為了滿足我們的日常需求,my_str是一個變量,我們不需要知道什么是變量,只需要知道,當把"我是"賦值給my_str的時候,我們對my_str操作其實就是對"我是"這個字符串操作
"""
my_str = "我是"
str_str = "字符串"
#獲取我這個字
print(my_str[0])
#獲取字這個字符在字符串中的位置
print(str_str.index("字"))
#獲取我是字符串
print(my_str + str_str)
#獲取我是這個字符串有多少個字符
print(len(my_str))
#獲取字符串中的字符兩個字
print(str_str[:-1])
print(str_str[:2])
print(str_str[:str_str.index("符")+1])
輸出以下結果
字符串
字符串
我說:'不是吧'
我
0
我是字符串
2
字符
字符
字符
代碼解析:
1、""和''是用來包裹字符串的,被包裹的內容就是字符串內容。如果我們喜歡用""來表示字符串,那么就一直保持這個習慣,不要混用""和'',這樣代碼風格不好。如果我們輸出的字符串內容含有'',那么我們就用""包裹該字符串,反之亦然。
2、字符串在python中表達為str類型。
3、我們可以通過下標的方式來獲取字符串中的某個字符。要記住,小標是從0開始算的,比如my_str[0]表示去my_str字符串的第一個字符。
4、python中的字符串類型是一個非常大的模塊,里面封裝好了很多函數,我們可以直接調用。很多函數等你需要用的時候,自然會知道,這里只教你怎么入門。index()函數是用來獲取某個字符在字符串中的位置的。注意,是從0開始計算的。
5、+這個運算符,如果左右兩邊連接的任何一個操作對象是字符串類型,那么會返回一個將兩個操作數連接一塊的字符串。我們通常用這個方法來連接字符串。但是這個方法比較耗內存,作為入門,我們只需知道+可以用來連接字符串,但是不能濫用。會有專門的字符串章節講述這些的。
6、len()函數可以用來獲取字符串的長度。
7、如果我們想獲取字符串中的一部分內容,可以用切片的方法。我們需要記住,字符串從左往右數,第一個字符的下標是0.從右往左數,第一個字符的下標是-1。切片用這樣的格式表述[起始下標:終止下標],如果是從下標0開始計數,起始下標可以省略。所以str_str[:-1]表示,從0開始到最后一個字符。
數值類型
數值類型也是我們的一大基本類型,常用來做一些計算操作,比如加減乘除。細分一下,它有兩種類型,分別是整型和浮點型。思考一下,我們日常用的數,是不是有帶小數點和不帶小數點兩種?粗略的認為,整型就是不帶小數點的,浮點型就是帶小數點的。
什么時候用整型,什么時候用浮點型呢?當你需要更精確的表達運算結果是,用浮點型。反之用整型。好了,動起手來。
"""
數值類型就是用來做加減乘除等運算的
"""
num_1 = 10
num_2 = 5
# 基本運算
print(num_1 + num_2)
print(num_1 - num_2)
print(num_1 / num_2)
print(num_1 * num_2)
print(type(num_1))
f_num_1 = 20.5
f_num_2 = 10.5
# 浮點型也可以做基本運算
print(f_num_1 + f_num_2)
print(type(f_num_1))
# 有時候也用數值來做條件判斷
if 1:
print("1是真值")
if 0:
print("0不是真值")
if -1:
print("-1也是真值")
輸出結果:
15
5
2.0
50
31.0
1是真值
-1也是真值
代碼解析:
1、數值類型氛圍浮點型和整型兩種,浮點型是更精確的數值類型。
2、數值類型都可以用來做數學運算。
3、數值類型還可以用來做條件判斷。記住:0是False,其他數字都是True。
數據類型的轉換
對象雖然都有自己的數據類型,但是眾多數據類型也不是相互獨立的,他們是互通的。實際開發過程中,我們會遇到很多數據類型,學會分辨它們的數據類型和所屬的操作是非常重要的,這樣可以快速達到我們的編程目的。快,敲代碼。
"""
數據類型的混合操作
"""
str_obj = "我是字符串"
int_obj = 10
float_obj = 15.5
bool_obj = True
# 轉換對象的數據類型
print(str(int_obj))
print(str(bool_obj))
# 字符串也可以轉換成數值類型,但是只有字符串里面含有字符的都是數字才可以轉換為數值類型
try:
#由于str_obj是漢字,所以無法轉為數值類型
print(int(str_obj))
except ValueError as err:
print(err.args)
#由于字符串是"10"所以可以轉換為數值類型
print(int("10"))
#當用+操作符操作字符串和整型的時候,會返回一個字符串
print(int(float_obj))
print(float(int_obj))
輸出結果:
10
True
("invalid literal for int() with base 10: '我是字符串'",)
10
15
10.0
代碼解析:
1、布爾型和數值類型都可以轉換為字符串類型。
2、字符串類型能不能轉換為布爾型,取決于字符串的字符是不是都是數字。
3、當整型和浮點型可以互相轉換。浮點型轉換為整型的時候,小數點后面的部分都將丟棄。整型轉換為浮點型,小數點后面添加一個0。
特殊的對象---None
python中還有一個特殊的對象---None,它表示空的意思。它不屬于任何數據類型,它就是空,在內存中有自己獨特的位置,不代表任何對象。來,最后一次敲代碼了。
"""
None是空值的意思,它不屬于任何數據類型
"""
str_obj = "我是字符串"
int_obj = 0
float_obj = 15.5
bool_obj = True
none_obj = None
print(str_obj == None)
print(int_obj == None)
print(float_obj == None)
print(bool_obj == None)
print(none_obj == None)
print(type(None))
# 但我們判斷其他對象是不是空值的時候,應該用is,雖然==號看起來沒問題,但是嚴格意義上來說,這種比較是錯誤的。因為None是空值,它沒有任何數據,不應該比較它的值。
print(str_obj is None)
print(int_obj is None)
print(float_obj is None)
print(bool_obj is None)
print(none_obj is None)
#None也被認為是False
if None:
print("None被認為是True")
else:
print("None被認為是False")
輸出結果:
False
False
False
False
True
False
False
False
False
True
None被認為是False
代碼解析:
1、None就是空值,他不含有任何數據。
2、python中經常用None來做判斷,判斷某個對象是不是空值,分析該對象是否被正確執行。
3、判斷一個對象是不是None要用is不要用==。因為None是一個在內中占據了位置的不包含數據的對象,無法比較它的值,只能判斷是否為同一個對象。
好了,我要怎么加強練習?不然明天又還給你去了
好了,簡單的數據類型先講到這里。是不是還是很蒙蔽呢?沒錯,是的,因為你練習還不夠。
這里講一下怎么練習,有針對性的練習,按照文章的章節順序,比如練習bool型的時候,用你學到的知識,自己寫一段跟我一樣的代碼來(不是照抄或者默寫,而是按照我教的東西,自己寫一段對應的知識點)。如果你能敲出來且不會很迷惑,那說明你掌握了。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的python无实际意义的语句_没有学不会的python--认识简单的数据类型的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: javascript 变量作用域
- 下一篇: python可以下载百度文库_百度文库随