Python學習第二章 Python語法基礎
一 Python數據類型
1.數值類型
Python支持四種數據類型
(1)整型(int):通常被稱爲整型或整數,是正或負整數,不帶小數點。
例如:1,10,-19,-1,0
(2)長整型(long):無限大小的整數,整數最後是一個大寫或者小寫的L。
(3)浮點型(float):浮點型由整數部分和小數部分組成,浮點型也可以使用科學技術法表示。
例如:2.78e2=2.78X10²=278
(4)複數(complex):複數由實數部分和虛數部分組成可以用a+bj或者complex(a,b)表示。
在Python中,數據類型是不允許改變的,如果改變數據類型的值,那麼將重新分配內存空間。
2.字符串
字符串的創建:使用引號來創建字符串。Python不支持字符類型,單字符在Python中也作爲一個字符串使用。
var1='hello world!'
var2='Python programming'
print("var1[0]",var1[0])
print("var2[1:5]",var2[1:5])
代碼運行結果:
var1[0] h
var2[1:5] ytho
3.轉義字符
需要在字符中使用特殊字符時,Python用反斜槓(\)轉義字符
例如:
轉義字符 | 描述 |
---|---|
\ | 續行符 |
\r | 回車 |
\n | 換行 |
4.字符串運算
例如: 實例變量a值爲字符串“hello”,b值爲字符串“world”
操作符 | 描述 | 實例 |
---|---|---|
+ | 字符串連接 | a+b輸出結果 :helloworld |
* | 重複輸出字符串 | a*2輸出結果:hellohello |
[] | 通過索引獲取字符串中字符 | a[2]輸出結果:l |
[:] | 截取字符串中的一部分 | a[1:3]輸出結果:el |
in | 成員字符串,如果字符串中包含給定的字符則返回true | ‘e’in a輸出結果爲True |
not in | 和in 相反 | ‘M’not in a輸出結果:True |
R或r | 將所有轉義和特殊字符按照字面意思輸出顯示 | print(R’\n prints\n’)輸出結果:\n prints\n |
5.字符串格式化
符號 | 描述 |
---|---|
%c | 格式化字符 |
%s | 格式化字符串 |
%d | 格式化十進制整數 |
%u | 格式化無符號整數 |
%o | 格式化八進制數 |
%x | 格式化十六進制數 |
%X | 格式化十六進制數(大寫) |
%f | 格式化浮點數,可指定小數點後精度 |
%e | 用科學計數法格式化浮點數 |
%E | 同%e |
%p | 用十六進制數格式化變量的地址 |
例:
charA=33
charB=64
print("ASCII碼代表:%c"%charA) #格式化字符
print("ASCII碼代表:%c"%charB)
str1=0xff
str2='helloworld'
print("格式化字符串:%s"%str1)
print("格式化字符串:%s"%str2)
num1=0xFF
num2=0xAB03
print('轉換成十進制數分別爲:%d和%d'%(num1,num2))
num3=1200000
print('轉換爲浮點數:%g'%num3)
num4=1200000
print('轉換爲浮點數:%f'%num4)
代碼輸出結果:
ASCII碼代表:!
ASCII碼代表:@
格式化字符串:255
格式化字符串:helloworld
轉換成十進制數分別爲:255和43779
轉換爲浮點數:1.2e+06
轉換爲浮點數:1200000.000000
6.布爾類型:布爾類型只有True和False兩種值,但是布爾類型可以參與and運算、or運算和not運算
(1)and與運算:兩個布爾值都爲TRUE時才爲TRUE
(2)or或運算:只要有一個布爾值爲TRUE,計算結果就是TRUE
(3)not非運算:把TRUE變爲FALSE,或者把FALSE變爲TRUE
Python中布爾類型還可以與其他數據類型做與或非運算,下面幾種情況會被認定爲FALSE:0,” “,None,空集合,其他值都爲TRUE
7.空值:None 和其他數據類型比較結果永遠爲FALSE
8.數字類型轉換:
操作符 | 描述 |
---|---|
int(x,[,base]) | 將X轉換爲一個整數 |
long(x,[,base]) | 將X轉換爲一個長整形 |
float(x) | 將X轉換爲一個浮點型 |
complex(real[,imag]) | 創建一個複數 |
str(x) | 將對象X轉換爲字符串 |
repr(x) | 將X轉換爲表達式字符串 |
eval(str) | 計算字符串中的有效表達式,並且返回一個對象 |
tuple(s) | 將序列s轉換爲一個元組 |
list(s) | 將序列s轉換爲一個列表 |
chr(x) | 將一個整數ASCII轉換爲一個字符 |
unichr(x) | 將一個證書轉換爲Unicode字符 |
ord(x) | 將一個字符轉換爲他的ASCII碼整數值 |
hex(x) | 十六位轉換 |
oct(x) | 八位轉換 |
x=20
y=345.6
z='@'
q=10,11,12,13
print(oct(x))
print(int(y))
print(float(x))
print(chr(65))
print(ord('b'))
print(list(q))
print(hex(x))
結果爲:
0o24
345
20.0
A
98
[10, 11, 12, 13]
0x14
小問題:在數據類型方面,Python和Java有何區別?
下一篇將學習Python中的常量與變量