單行注釋:#開頭的語句
多行注釋:"""注釋內(nèi)容"""
縮進:4個空格</br>以冒號:結(jié)尾時,縮進的語句視為代碼塊。
大小寫敏感
- 數(shù)據(jù)類型
1.整數(shù):十六進制用0x前綴和0-9,a-f表示,eg:0xff00,0xa5b4c3d2
2.浮點數(shù):10用e替代,1.23x109=1.23e9=12.3e8,0.000012=1.2e-5
3.字符串:以單引號'或雙引號"括起來"I'm ok"
4.轉(zhuǎn)義字符:\'I\'m \"OK\"!'轉(zhuǎn)義成I'm "OK"!\n表示換行,\t表示制表符
5.用r''表示''內(nèi)部的字符串默認不轉(zhuǎn)義
6.在命令行用'''...'''的格式表示多行內(nèi)容
問:輸入錯誤之后仍然出現(xiàn)...怎么退出?exit()無效 Ctrl+z 無效
>>> print('''line1
... line2
... line3''')
line1
line2
line3
7.注意True ,False 大小寫
8.not運算:非運算,是一個單目運算符,把True變成False,F(xiàn)alse變成True
>>> not True
False
>>> not False
True
>>> not 1 > 2
True
9.理解變量在計算中的存儲
10.習慣上用全部大寫的變量名表示常量 eg:PI = 3.14159265359
11.整數(shù)的除法:/結(jié)果是浮點數(shù) ,//結(jié)果取整數(shù), %結(jié)果取余數(shù)
- 字符串和編碼
1.ASCII、Unicode和UTF-8的關(guān)系 沒太搞懂 感覺Unicode是一套包含ASCII等多個編碼的編碼系統(tǒng),UTF-8是為簡化Unicode存儲應運而生的編碼
2.ord()獲取字符的整數(shù)表示,chr()把編碼轉(zhuǎn)換為對應的字符
>>> ord('a')
97
>>> chr(66)
'B'
3.網(wǎng)絡傳輸,或保存磁盤時,需要把str變?yōu)橐宰止?jié)為單位的bytes。
Python對bytes類型的數(shù)據(jù)用帶b前綴的單引號或雙引號表示:x = b'ABC'
Unicode表示的str通過encode()方法可以編碼為指定的bytes
4.從網(wǎng)絡或磁盤上讀取了字節(jié)流,那么讀到的數(shù)據(jù)就是bytes。要把bytes變?yōu)閟tr,就需要用decode()方法
(這一段不太懂,遇到實例再看,先記下)
5.# -*- coding: utf-8 -*-語句寫在開頭,按照UTF-8編碼讀取源代碼,避免源代碼中的中文輸出有亂碼
- 格式化 :
%字符
%s 字符串 ,不知道該用什么的時候,也可以用這個。比如,True 和False
%d 整數(shù)
%f 浮點數(shù)
%x 十六進制整數(shù)
寫法:
>>> 'Hello,%s' %'word'
'Hello,word'
>>> 'Hi,%s,you have $%d.' %('Michael',10000)
'Hi,Michael,you have $10000.'
注意:%()前有空格
關(guān)于格式化整數(shù)和浮點數(shù)還可以指定是否補0和整數(shù)與小數(shù)的位數(shù)
%2d代表前(2-1)個空格占位,無0則不補0。 eg:%08d則表示前有7個0占位
'%.2f'代表保留2位
>>> '%2d-%02d' % (3, 1)
' 3-01'
>>> '%.2f' % 3.1415926
'3.14'
普通字符%,用%%來轉(zhuǎn)義為%
>>> 'growth rate: %d %%' %7
'growth rate: 7 %'
- list列表
list列表:有序集合c=['a','b','c'],可用len()獲取元素個數(shù),索引獲取元素
list的一些方法:
c[-1] #索引取元素,個數(shù)為n-1
c.append('d') #末尾加元素
c.insert(4,'e') #指定位置加插入元素
c.pop() #刪除末尾元素
c.pop(0) #刪除指定位置元素
c[1]='hi' #替換元素
a[4][1] #取二維元素
- tuple 元組
tuple元組:有序列表,一旦初始化不能修改
>>> tup=('zhao','qian','sun')
注意:當定義的tuple中只有一個元素時,加逗號
tup = (1,)