數值分成三種: 整數、浮點數、複數
(1)整數:在python中整數都是int型別,無大小限制,可任意大小
如果數字長度過大可以使用下劃線作為分隔符
如:a = 123_456_345 (a的值為123456345)
十進位制的數字不能以0開頭
其他進製的整數,只要是數字列印時一定是以十進位制的形式顯示
二進位制0b開頭 bin(2) ---> 將數字2轉化為二進位制數
八進位制0o開頭 oct(2) ---> 將數字2轉化為八進位制數
十六進製制0x開頭 hex(2) ---> 將數字2轉化為十六進製制數
(2)浮點數(小數):在python中所有小數都是float型別
對浮點數進行運算時,可能會得到乙個不精確的結果,如:
0.1 + 0.2 = 0.3000000000000000004
(3)複數
不解釋
使用引號引起來,可以是單引號,也可以是雙引號,但相同的引號之間不能巢狀,如:
s = "我說: "我是最棒的!"" ----錯誤
s = '我說: "我是最棒的!"' ----正確
s = '飛流直下三千尺,
疑是銀河落九天' -----錯誤
s = '飛流直下三千尺,\
疑是銀河落九天' -----正確
三重引號可以用來表示乙個長字串,三重引號可以換行,並且會保留字串中的格式
''' 或 """,如"""sdfasdfasdfasdfasdfgsdgafdha"""
轉義字元:
可以使用\作為轉義字元,通過\可以在字串中使用一些特殊的內容,例如:
\' 表示 '
\" 表示 "
\t 表示 製表符
\n 表示 換行符
\\ 表示反斜槓\
\u***x 表示unicode編碼
(1)(拼串)字串之間可以進行加法運算,如:
a = 'fgh'
b = 'bnm'
c = a + b
則c是'fghbnm'
但是字串不能和其他的資料型別相拼接,可以這麼做:
a = 123
print('a=' + a),可是此方法不常用
(2)(多個引數)也可以使用print來格式化輸出:
a = 123
b = 'sad'
print('a =', a, b)
(3)(佔位符)在建立字串時,可以在字串中指定佔位符%s,此佔位符可辨識任意字元,如:
b = 'hello %s' % 'world' # 表示用world去填充佔位符%s的位置
輸出: hello world
當有多個佔位符時,可以這麼處理:
b = 'hello %s, 我是%s' %('小紅', '小麥')
若佔位符前面加了數字,如%3s,則表示代替的字串至少有三個(不夠則補位)
如%3.5s,則表示字串長度在3-5之間
原則上%也可用於數字的佔位符,但是在有效數字要求上不好處理,因此還有另外乙個佔位符
%f 浮點數佔位符,%.4f 表示保留到小數點後四位
%d 整數佔位符 直接把小數捨去
新的方法:
(4)格式化字串
在字串前新增乙個f來建立乙個格式化字串,在其中可以直接嵌入變數,例子:
a = 'mai'
b = 'sasa'
c = f' loves '
則c的值是 'mai loves sasa'
也可以直接列印: print(f' loves ')
如: a = 'abc'
c = a * 20 (字串跟數字位置可以顛倒)
直譯器會將字串重複指定的次數並返回
(1)布林值(boolean,簡稱bool)
布林值主要用來做 邏輯判斷
布林值共有兩個: true false
布林值實際上也屬於整型,true相當於1,false相當於0
- 用作布林表示式時,下面的值都被直譯器視為假:
false none 0 '' () {}
(2)none(空值)
專門用來表示不存在
先回顧一下python的資料型別:
數值整型
布林值浮點型
復數字串
空值type() 用來檢查值的型別,該函式會將檢查的結果作為返回值返回,例如:
c = type(a)
- python是一門物件導向的語言
- 一切皆物件!
- 程式執行當中,所有的資料都是儲存到記憶體當中然後再執行的!
- 物件就是記憶體中專門用來儲存指定資料的一塊區域
- 物件實際上就是乙個容器,專門用來儲存資料
- 數值、字串、布林值、none等都是物件
- 每個物件中都要儲存三種資料
(1)id(標識) -用來標識物件的唯一性,每個物件對應乙個唯一的id,物件一旦建立,則永遠不會改變
可通過id()檢視,在cpython中,id就是物件的記憶體位址
(2)type(型別) -python是一門強型別語言,因此物件一旦建立型別便不能改變
可通過type()檢視型別
(3)value(值)
-物件分成兩大類,可變物件和不可變物件
可變物件的值可以改變
不可變物件的值不可以改變(目前學的都是不可變物件)
實際上,物件並沒有直接儲存到變數中,在python中變數更像是物件的乙個別名,
變數中儲存的不是物件的值,而是物件的id(記憶體位址),當我們使用變數時,實際上就是在通過物件id尋找物件
- 將乙個型別的物件轉換為另乙個型別的物件
- 型別轉換不是改變原有物件本身的型別,而是將物件的值轉換為新的物件(即根據當前物件的值建立乙個新的物件)
型別轉換函式:
(1) int()
-可以用來將其他物件轉換為整型,將浮點數用int()轉換後,小數直接被捨去
-合法的整數字串,則可以直接轉化為對應的數字,否則報錯
-布林值 true-->1 false-->0
-不能轉化none型別
(2) float()
-和int()規則基本一致
-布林值 true-->1.0 false-->0.0
(3) str()
-轉為字串
-布林值 true-->'true' false-->'false'
(4) bool()
-在python中任何物件都能轉化為布林值
-規則:所有表示空性的物件都會轉化為false,其餘的轉化為true,
如 0、none、''、""等等
ARTS打卡23 Python自帶迷你資料庫
algorithm做演算法題,review點評英文文章,tip總結技術技巧,share做技術分享。每週打卡一次,這就是arts打卡。leetcode 劍指 offer 59 ii.佇列的最大值 題目描述 請定義乙個佇列並實現函式max value得到佇列裡的最大值,要求函式max value pus...
(23)python集合的使用
集合是無序可變,元素不能重複。實際上,集合底層是字典實現,集合的所有元素都是字典中的 鍵物件 因此是不能重複的且唯一的。1.使用 建立集合物件,並使用 add 方法新增元素 a a a.add 9 a 2.使用 set 將列表 元組等可迭代物件轉成集合。如果原來資料存在重複資料,則只保留乙個。a a...
23 Python常用模組(一)
1.簡單了解模組 寫的每乙個py檔案都是乙個模組.還有一些我們一直在使用的模組 buildins 內建模組.print,input random 主要是和隨機相關的內容 random 隨機小數 uninform a,b 隨機小數 randint a,b 隨機整數 choice 隨機選擇乙個 samp...