Python基礎學習!基本元素,數字,字串以及變數
阿新 • • 發佈:2018-11-30
判斷資料型別:
>>> type(a)
<class 'str'>
>>> b =5
>>> type(b)
<class 'int'>
>>> c= 2.3
>>> type(c)
<class 'float'>
>>>
除法:
一個/符號得到的是浮點數
一個//符號得到的是整數
>>> 5/3
1.6666666666666667
>>> 5//3
1
>>>
同時得到商和餘數:
>>> divmod(9,5)
(1, 4)
>>>
等價於分別計算:
>>> 9//5
1
>>> 9%5
4
>>>
型別轉換:
>>> int(True)
1
>>> int(6.7)
6
>>> float(5.0)
5.0
>>>
Python處理超級大的數,也不會報錯。這個是它的一個優點!
字串:
支援一對或者三對單引號或者雙引號! 錯誤例項:四個雙引號就不可以!
>>> 'abcd' 'abcd' >>> "abcd" 'abcd' >>> '''abcd''' 'abcd' >>> """abcd""" 'abcd' >>> """"abcd"""" File "<stdin>", line 1 """"abcd"""" ^ SyntaxError: EOL while scanning string literal >>>
當然,三個引號自然有另外的功能:
>>> a='''
... a
... b
... c
... d
... e
... '''
>>> a
'\na\nb\nc\nd\ne\n' #已經出現了換行符號!輸出就會自動換行!
>>> print(a)
a
b
c
d
e
>>>
字串加在一起:
str():可以將數字型別轉換成為字串型別!
>>> str(88)
'88'
>>>
可以用下面這個建立空字串:(不過我感覺沒啥用呀!)
提前定義一下,即使為空。定義以後才可以使用!
>>> b += 'sun '
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +=: 'int' and 'str'
>>> b= ''
>>> b += 'sun '
>>> b += 'is '
>>> b += 'hot '
>>> b
'sun is hot '
>>>
轉義符:
這個跟C語言類似;
- \n
- \t
- \
>>> print('a\nb\nc')
a
b
c
>>> print('a\nb\tc')
a
b c
>>> print('a\tb\tc')
a b c
>>> print('a\\b\tc')
a\b c
>>> print('a\\nb\tc')
a\nb c
>>> print('a\\tb\tc')
a\tb c
>>>
+符號可以拼接字串:
>>> a = 'byebye'
>>> b = 'you'
>>> a+b
'byebyeyou'
>>>
*可以複製字串:
>>> c = 'you'
>>> f = c*4
>>> f
'youyouyouyou'
>>>
[]提取字元:
關於偏移量,第一個就是0.最後一個是-1,倒數第二個是-2 etc.
>>> yy = 'abcdef'
>>> yy[0]
'a'
>>> yy[1]
'b'
>>> yy[-1]
'f'
replace替換指定位置字元:
.replace(‘a’,‘b’,‘n’)
a:表示被替換的字元 b:用來替換的字元 n:替換的次數(預設為1)
要特別注意替換與被替換的字元裡的空格。否則會有大問題!
>>> yy = 'abcdef'
>>> yy.replace('a','s')
'sbcdef'
>>>
會替換對應的字元位置的資訊!
[start :end:step]分片:
偏移量定義和前面說的一樣。
[start :end:step]分片:
- [:] 提取開頭到結尾的整個字串
- [start:]從start提取到結尾
- [:end] 從開頭提取到end-1
- [start:end] 從start提取到end
- [start:end:step] 從start提取到end,每step提取一個!
程式碼:
>>> ss = 'abcdefhijklmnopqrstuvwxyz'
>>> ss [:]
'abcdefhijklmnopqrstuvwxyz'
>>> ss [20:]
'vwxyz'
>>> ss [3:]
'defhijklmnopqrstuvwxyz'
>>> ss [4:12]
'efhijklm'
>>> ss [-4:]
'wxyz'
>>> ss [18:-4]
'tuv'
>>> ss [-6:-4]
'uv'
>>> ss [::6]
'ahntz'
>>> ss [12:-1:6]
'nt'
>>>
提取全表:
>>> ss [-1::-1]
'zyxwvutsrqponmlkjihfedcba'
>>>
對待錯誤資料的容忍:
- 小於起始位置的偏移量,會被當做0對待
- 大於終止位置的偏移量,會被當做-1對待
>>> ss[-100:-1]
'abcdefhijklmnopqrstuvwxy'
>>> ss[0:80]
'abcdefhijklmnopqrstuvwxyz'
>>>
len():獲取字串長度:
>>> len(ss)
25
>>> r = ''
>>> len(r)
0
>>>
split():分割。
通過一個標誌性的字元,或者逗號
將字串分割成為多個字串
>>> w = '123,we,re,ty,yu,er,23,rty,yy6u'
>>> w
'123,we,re,ty,yu,er,23,rty,yy6u'
>>> w.split(',')
['123', 'we', 're', 'ty', 'yu', 'er', '23', 'rty', 'yy6u']
>>> w.split('3')
['12', ',we,re,ty,yu,er,2', ',rty,yy6u']
>>>
join():合併字串。
跟split()函式功能正好相反,這個是將多個字串分解合併成為同一個字串!
>>> q = ['12', ',we,re,ty,yu,er,2', ',rty,yy6u']
>>> a =','.join(q)
>>> a
'12,,we,re,ty,yu,er,2,,rty,yy6u'
>>>
熟悉字串的一些函式:
>>> w = ''' ALL that doth flow we about
... sun is hot
... wo love each other
... peace is very price
... '''
>>> len(w)#獲得長度!
79
>>> w[23:]#從第23開始檢視!
'about\nsun is hot\nwo love each other\npeace is very price\n'
>>> w.find('is')#查詢‘is’字串在哪裡~
33
>>> w.count('is')#統計‘is’,字串出現的次數!
2
>>>
>>> w.isalnum()#是否全部為數字?
False
>>>
大小寫與對齊方式
>>> w = 'today is a sun day... '
>>> w.strip('.')
'today is a sun day... '
>>> w = 'today is a sun day ... '
>>> w.strip('.')
'today is a sun day ... '
>>> w.strip('.')
'today is a sun day ... '
>>> w.capitalize()#字串首字母變成大寫!
'Today is a sun day ... '
>>> w.title()#所有單詞開頭字母變成大寫!
'Today Is A Sun Day ... '
>>> w.upper()#所有字母變成大寫!
'TODAY IS A SUN DAY ... '
>>> w.lower()#所有字母變成小寫!
'today is a sun day ... '
>>> w.swapcase()#所有字母大小寫轉換!
'TODAY IS A SUN DAY ... '
>>> w.center(40)#40個字元位,居中
' today is a sun day ... '
>>> w.rjust(40)#40個字元位,右對齊
' today is a sun day ... '
>>> w.ljust(40)#40個字元位,左對齊
'today is a sun day ... '
>>>
列表:
建立列表程式碼:
>>> quote = {
... "Moe":"A wise guy,huh?",
... "lua":"OK!",
... "gure":"nice",
... }
測試:
>>> a="lua"
>>> a = "lua"
>>> print(a,"say",quote[a])
lua say OK!
>>>
這個會對應輸出你列表的位置的元素!