數字:
int整型
long長整型:無限大小的整數,整數最後一位是大寫的或小寫的l
在py3中整數如果過長溢位會自動轉換為long型
浮點型:(floating point real values) - 浮點型由整數部分與小數部分組成,
浮點型也可以使用科學計數法表示(2.5e2 = 2.5 x 102 = 250)
複數(complex numbers): - 複數由實數部分和虛數部分構成,
可以用a + bj,或者complex(a,b)表示, 複數的實部a和虛部b都是浮點型。
方法:.bit_length() 表示十進位制數轉換為二進位制數時最少使用的位數。
n = 1
n1 = 3
n2 = 5
n3 = 8
print(n.bit_length())
print(n1.bit_length())
print(n2.bit_length())
print(n3.bit_length())
布林值:
字串和布林值的轉換
str—>bool:非空字串轉換為布林值為true,空字串為false
s = bool(」)
s1 = bool(『sdsdsdds』)
print(s, s1)
bool—> str
直接將bool值數字串化
ps:print(str(1 < 2)) 返回值是字串:』false』
說明會先進行運算。
布林值和數字之間的轉換
bool—->int
int(true) -> 1
int(bool) -> 0
int—->bool
bool(0) -> false
bool(1) -> true
bool(-1)-> true
bool(1.2) -> true
空列表,空元祖,空字典 -> false
應用:做邏輯判斷
字串:
索引:s[i] 起始為0,顧頭不顧尾 i > 0 從左至右;i < 0 從右至左
切片:s[start:end:步長] 步長 > 0 從左至右切;步長 < 0 :從右至左切。
如果沒有規定步長,預設從左至右 print(s[::-1]) #逆序字串
常用方法;終於明白()裡是寫的是方法的引數,另外學會看原始碼
*.capitalize() 將首字母大寫剩餘的小寫
.swapcase() 大小寫翻轉
*.upper()
.lower()
.title() 每個單詞的首字母大寫,中間需用特殊字元(例如空格)隔開
*.center()----> .center(width, fillchar) fillchar填充字元得是字串的格式
返回乙個指定寬度 width 居中的字串,如果 width 小於字串寬度直接返回字串,否則使用 fillchar 去填充。
***.count()--->.count(子字串,start引數,end引數)
計算子字串在字串中出現的次數.
***.find()
檢測字串是否包含子字串,包含,返回匹配的*第乙個子字串*的*索引值*,不包含返回-1
----> .find(substring, start引數 ,end引數)
***.index()和.find()
方法一樣,不過如果string不包含substring,丟擲異常 「substring not found」
*.endswith() 檢測字串中是否以指定字尾結尾
----> .endswith(指定字尾,start引數,end引數)
str='runoob example....wow!!!'
print (str.endswith(suffix,20))
.startswith() 檢測字串中是否以指定內容開頭
----> .endswith(指定開頭,start引數,end引數) #引數實際是切片,注意位數
.expandtabs() 將字串中的tab符號(\t)補全成空格
將tab符號前面的字串位數補全為8,超8的話補全為16,依次類推
----> .expandtabs(tabsize) tabsize 是空格數
**is系列
isalnum()檢測字串是否由數字或字母組成
isalpha()檢測字串是否由字母組成
isdigit()檢測字串是否由數字組成
可作判斷條件
****replace()替換字串中的子字串
---->.replace(old ,new , max) *max最大替換次數
*****.split()
以指定子字串分割字串,返回不含有指 定子字串的*列表*,預設按空格分割。
----> .split(sub, num) *num是分割次數。
.rsplit() 從右往左。
a = 'i can do it. yes, i can '
print(a.split()) # 不設定引數,預設是按空格分割
print(a.split('a'))
print(a.split('i')) #### 以開頭物件分割返回空字串
*****.join()
-->s.join(iterable)
以指定字元s連線乙個可迭代物件,其元素必須
是字串
可以將列表轉換為*字串*
同樣也可以將元組轉換為字串
連線字典時連線的是鍵值
l = ['s', 'a', 'hello', 'world']
print('_'.join(l))
print('*'.join(l))
print(''.join(l), type(''.join(l)))
*****.strip()消除字串*前後*空格 ()
函式引數預設是空格,除此還可以設定引數
lstrip()消除字串前面(左面)空格
rstrip()消除字串後面(右面)空格
*****.format()
根據不同的需求進行操作
print('name:{}, age:{} ,length:{}'.format('muyi', 11, 180))
print('name:, age: ,length:'.format('muyi', 11, 180))
print('name:, age:,length:'.format(姓名='muyi', 年齡=18, 身高=180))
for迴圈是有限迴圈
例題:
實現乙個整數加法計算器:
如:content = input(『請輸入內容:』) #
如使用者輸入:5+9或5+ 9或5 + 9,然後進行分割再進行計算。
sum = 0
l = content.split('+')
for i in l:
sum = sum + int(i)
print(sum)
content = input('請輸入表示式:')
index = content.find('+')
sum = int(content[0:index]) + int(content[index+1:]) #空格問題,int()函式可以自動去空格
print(sum)
計算使用者輸入的內容中有幾個整數。
如:content = input(『請輸入內容:』) # 如fhdal234slfh98769fjdla
content = input(『請輸入表示式:』)
sum = 0
#兩種角度
content = input('請輸入:')
count = 0
for i in content:
if i.isdigit():
count += 1
print(count)
s = input('請輸入:')
count = 0
while s:
s = s.lstrip('abcdefghijklmnopqrstuvwxyz')
s = s.lstrip('0123456789')
count += 1
print(count)
資料型別之布林值(bool boolen)
只有兩個值 true false 轉換數字轉布林 0是false,其他都是true 字串轉布林 是false,其他都是true 列表轉布林 是false,其他都是true 元組轉布林 是false,其他都是true 其他型別字元轉換為布林型別 示例 val1 bool 0 val2 bool val...
布林值和Boolean型別
今天在複習js基本資料型別的時候發現了乙個以前忽略的知識點,那就是boolean型別和布林值的區別。首先,要明確一下,boolean型別是與布林值對應的引用類。舉例來看,var object new boolean false var value true alert object value 可能...
python筆記4 布林值
布林值 空值 布林值只有兩種 true還有false,分別代表真與假 true false的首字母大寫,其他小寫,這是固定寫法 布林值長這樣 true false大多數時候,布林值並不會直接出現在 中 更多時候以這三種形式活躍在你的 裡 1 第一種情況 兩個數值在互相比較時 2 第二種使用情況 數值...