sum 轉字串 Python字串與內建函式

2021-10-18 10:53:25 字數 4311 閱讀 6425

字串

建立變數來儲存字串 字串可以通過單、雙、三引號建立字串

message = "hello,world"#變數mseeage,值為'hello,world'

print(message)

輸出結果:hello,world

python3,有3種數值型別分別為:int(整形)

#建立變數為a,值為496

a = 496 

#type檢視型別

print(type(a))

輸出結果:

float(浮點型) 十進位制的儲存方式 輸入的數字中有小數點

e = 2.718281828

print(type(e))

輸出結果:

complex(複數) 複數分為實數和虛數兩部分 建立複數,先輸入實數部分 然後是虛數部分,結尾寫j 實數和虛數部分可以分開顯示 .real屬性可以輸出實數值 .imag屬性可以輸出虛數值

z = 2 - 6.1j

print(type(z))

z.real

z.imag

輸出結果:

運算中有4種運算子:+ - * / 先要了解數值間的轉換侷限 任何整數可以當作浮點數 在int最後加.0就能變為float或通過float()方法轉,但返過來不一定行

x = 28 #int

y = 28.0 #float

float(28)

3.14是小數非整數

int(3.14)   #如果將其轉為int,會先四捨五入,然後轉為int,不再是同乙個數字了,可以說int比範圍更小,反之float比int範圍大

x = 1.732 #float

1.732 + 0j   #浮點數可以轉為複數,在float未尾加+0j就能變為complex

complex(1.732)#或通過complex()方法轉

float(1.732+0j) #如果將complex轉為float,會報錯,所以說float比complex範圍更小,反之complex比float範圍更大

a = 2 #int

b = 6.0 #float

c = 12 + 0j #complex

py會自動將範圍小的轉為範圍大的型別

a + b #int+float,float比int範圍大,py將int轉為float,再加結果是8.0是float非int

b - a #float-int,int比float範圍小,py將a變為float,再減,結果4.0是float

a * 7 #int*int,結果14也是int

c / b #complex/float,float比complex範圍小,b轉為complex,再除,結果2+0j,值大小和2一樣,但儲存為複數型別,因為有虛數部分存在,py用j而不是不表示-1開根

16/5 #兩個整數相除,結果是浮點型

20/5#即使沒有餘數,結果也是浮點型

16%5#%取餘運算會返回餘數

16//5#//可以返回商

別忘了運算中的規定,除數不得為0,不然py中會報錯zerodivisionerror,除法要小心,除非確定分母不是零,必須要為這種可能做準備

內建函式檔案 第乙個要知道的函式是dir(),目錄directory的縮寫 顯示當前模組的屬性列表 輸出結果:['annotations', 'builtins', 'cached', 'doc', 'file', 'loader', 'name', 'package', 'spec']

當第一次啟動直譯器,會有4個標準物件, 現在學習__builtins__,這是乙個包含公共物件的模組,想看__builtins__物件中的內容,檢視__builtins__物件的目錄,使用dir(builtins)即可

lst = dir(__builtins__)

print(lst)

lst = help(pow)

print(lst)

輸出結果:pow(base, exp, mod=none) #有三個引數 equivalent to baseexp with 2 arguments or baseexp % mod with 3 arguments

some types, such as ints, are able to use a more efficient algorithm when

invoked using the three argument form.

lst = pow(2,10)

print(lst)

輸出結果:1024

學習hex函式,依舊使用help()

lst = help(hex)

print(lst)

輸出結果:help on built-in function hex in module builtins:

hex(number, /) return the hexadecimal representation of an integer.

>>> hex(12648430)

'0xc0ffee'

不需要導入庫,直接用即可,hex的輸入引數是數字型別

i = hex(10)

print(i)

輸出結果:0xa

注意,結果在幫忙文件中說是字串,因為有引號,也表明是字串,還要知道在py中十六進製制以0x開頭,如果想把十六進製制轉回十進位制,直接輸入十六進製制值,注意就不要寫引號了,py直譯器才會把它當作數字而不是字串

布林型別 布林型別是py內建的資料型別,只有true和false兩個值,注意它們都要大寫,輸入true,py返回true,如果輸入不當,報錯nameerror.false同理,大寫才正常,反之報錯。

比較兩個物件時會用到布林型別 變數a和b,值分別為3和5

a = 3

b = 5

通過==進行是否相等比較

a == b  #結果顯示false,a和b是不同的整數,注意使用=是賦值操作,==是相等比較.

a != b  #除此之外,測試相等還可以使用。!=不相等符號測試,因為a,b不相等,所以返回true

此外,程式設計語文中通常表示邏輯非,等價於不等於,最後測試兩個數字是否相等,還可以通過大小判斷

a > b #a是否大於b,false

a #a是否大小b,true

type(true) #通過type()看它們型別

type(false) 顯示都是bool,還可以通過傳值給bool構造器來建立布林

例如,傳數值給它

bool(28)#輸出true

bool(-2.71825)

bool(0) #輸出false,在py中0認為是false,其他數字都是true

還可以將字串轉為布林

bool('turing') 輸出true

bool('') 輸出false,py中空的字串認為是false,其他字串都是true,特殊值為false,其他為true

可以將其他型別轉為布林型別,也可以將布林轉為其他型別

str(true) #返回'true',true因為有引號,所以是字串型別,布林型別沒有引號

str(false) #同理

還可以將布林轉為數字

int(true) #返回1

int(false) #返回0

5 + true #數字和true相加會發生什麼,py會認為將true和整數相加,都先轉為整數,然後求和

10 * false #返回0,就像之前講的運算操作一樣,把false當作0,然後相乘,也許不是你要的結果

重點:py中true當作1,false當作0

datetime模組

Python 字串轉浮點型,列表轉字串

爬蟲過程中,採集的資料常以str或float存入資料庫 遇到含小數點的文字,需要轉換成浮點型xpath 或re.findall 提取資訊返回列表,列表可能為空,不便存進資料庫。a float 1.21 print a import numpy as np ls 1.2 3 0.5 array np....

JavaScript數字轉字串,字串轉數字

1 數字轉字串 這裡的name需要繫結字串型別,而index是陣列型別,就是拼接了乙個空字串 也可以使用tostring 字串轉數字 2 var s 234 3 1 純數字轉換 4 5 1 字串在運算操作中會被當做數字型別來處理 6 s 1 7 8 2 字元前加 9 console.log s 10...

python 字串轉時間

s1 20120125 6 s2 20120216 7 a time.strptime s1,y m d 8 b time.strptime s2,y m d 9 a datetime datetime.datetime a 3 10 b datetime datetime.datetime b 3...