1、python的安裝:
版本:python3.5.0 ?64bit

然后點“Install Now”即可完成安裝.
2、python的運行:
>>>表示python的交互式環(huán)境,輸入exit()表示退出python交互式環(huán)境也可以點擊右上角的 × 完成。
3、編寫代碼:
》用單引號或者雙引號括起來的文本在程序中叫字符串。
》在Python交互式命令行下,可以直接輸入代碼,然后執(zhí)行,并立刻得到結(jié)果。
》用文本編輯器寫Python程序,然后保存為后綴為.py的文件,就可以用Python直接運行這個程序了。
單引號用于字符的輸出,如print 'hello,darling',輸出 hello,darling.雙引號用于字符串的輸出,和單引號沒有太大區(qū)別。括號在python中可加可不加。
print()函數(shù)也可以接受多個字符串,用逗號“,”隔開,就可以連成一串輸出:
>>>print('The quick brown fox','jumps over','the lazy dog')The quick brown fox jumps over the lazy dog
print()會依次打印每個字符串,遇到逗號“,”會輸出一個空格,因此,輸出的字符串是這樣拼起來的:
》以#開頭的語句是注釋,注釋是給人看的,可以是任意內(nèi)容,解釋器會忽略掉注釋。其他每一行都是一個語句,當(dāng)語句以冒號:結(jié)尾時,縮進的語句視為代碼塊。
》Python使用縮進來組織代碼塊,要遵守約定俗成的習(xí)慣,堅持使用4個空格的縮進。
》在文本編輯器中,需要設(shè)置把Tab自動轉(zhuǎn)換為4個空格,確保不混用Tab和空格。
》print在輸出數(shù)字時要加括號,在輸出字符時不用
整數(shù):
Python可以處理任意大小的整數(shù),當(dāng)然包括負整數(shù),在程序中的表示方法和數(shù)學(xué)上的寫法一模一樣,例如:1,100,-8080,0,等等。
計算機由于使用二進制,所以,有時候用十六進制表示整數(shù)比較方便,十六進制用0x前綴和0-9,a-f表示,例如:0xff00,0xa5b4c3d2,等等
浮點數(shù):
對于很大或很小的浮點數(shù),必須用科學(xué)計數(shù)法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以寫成1.2e-5,等等。
轉(zhuǎn)義字符:
轉(zhuǎn)義字符\可以轉(zhuǎn)義很多字符,比如\n表示換行,\t表示制表符,字符\本身也要轉(zhuǎn)義,所以\\表示的字符就是\


接下來看python有條理的執(zhí)行過程:

常量:
幾種除法:① ? / ? 平常的除法 如,10/3=3.333333
② ? ?// ? 地板除即兩個整數(shù)的除法取整 ?如,10//3=3
③ ? ? % ?取余 ? 如,10%3=1
特別注意整數(shù)的除法計算結(jié)果都是浮點數(shù),即使兩個整數(shù)剛好整除也是:9/3=3.0


用記事本編輯的時候,從文件讀取的UTF-8字符被轉(zhuǎn)換為Unicode字符到內(nèi)存里,編輯完成后,保存的時候再把Unicode轉(zhuǎn)換為UTF-8保存到文件:
瀏覽網(wǎng)頁的時候,服務(wù)器會把動態(tài)生成的Unicode內(nèi)容轉(zhuǎn)換為UTF-8再傳輸?shù)綖g覽器:
對于單個字符的編碼,Python提供了ord()函數(shù)獲取字符的整數(shù)表示,chr()函數(shù)把編碼轉(zhuǎn)換為對應(yīng)的字符:
>>>ord('A')
65
>>>chr(66)
'B'
在計算機內(nèi)存中,統(tǒng)一使用Unicode編碼,當(dāng)需要保存到硬盤或者需要傳輸?shù)臅r候,就轉(zhuǎn)換為UTF-8編碼。由于Python源代碼也是一個文本文件,所以,當(dāng)你的源代碼中包含中文的時候,在保存源代碼時,就需要務(wù)必指定保存為UTF-8編碼。當(dāng)Python解釋器讀取源代碼時,為了讓它按UTF-8編碼讀取,我們通常在文件開頭寫上這兩行:
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
格式化:
我們經(jīng)常會輸出類似'親愛的xxx你好!你xx月的話費是xx,余額是xx'之類的字符串,而xxx的內(nèi)容都是根據(jù)變量變化的,所以,需要一種簡便的格式化字符串的方式。

一些常用占位符:
%d ?整數(shù) ? ? ? ? ? ? ? %f ?浮點數(shù) ? ? ? ? ? ? %s字符串 ? ? ? ? ? ? ? ? %x十六進制整數(shù) ? ? ? ? ? ? ?/n ? 換行符
如果你不太確定應(yīng)該用什么,%s永遠起作用,它會把任何數(shù)據(jù)類型轉(zhuǎn)換為字符串

如果字符串里%是一個普通字符,就用%%轉(zhuǎn)義。

條件判斷:
if語句:
elif是else if的縮寫,完全可以有多個elif,所以if語句的完整形式就是:

if判斷條件還可以簡寫,比如寫:
ifx:(一定要注意不要漏掉冒號)
print('True')
只要x是非零數(shù)值、非空字符串、非空list等,就判斷為True,否則為False。
input問題判斷→int取整

冒泡排序:

List:list是一種有序地集合,可以隨時添加和刪除其中的元素。如:

len函數(shù),len(classmates)=3 表示list中元素的個數(shù)。用索引來訪問list中每一個位置的元素,記得索引是從0開始的!!!最后一個元素的索引是len(classmates) - 1,表示倒數(shù)第一個。也可以直接用-1,classmates[-1] ? 》》》'tracy'
append:list是一個可變的有序表,所以,可以往list中追加元素到末尾:

insert函數(shù):也可以把元素》插入《到指定的位置,比如索引號為1的位置:

pop函數(shù):要》刪除《list ?末尾 ?的元素,用pop()方法:

要刪除指定位置的元素,用pop(i)方法,其中i是索引位置:

要把某個元素》替換《成別的元素,可以直接賦值給對應(yīng)的索引位置:

維數(shù),

for語句
for x in ...循環(huán)就是把每個元素代入變量x,然后執(zhí)行縮進塊的語句。
而for x in range()函數(shù)則是一個可以生成整數(shù)有序數(shù)列的語句。如




if,while,for等語句都要加冒號??!if 語句后接表達式,然后用:表示代碼塊開始。

Ture or False首字母要大寫,如while True.
縮進格式要對!具有相同縮進的代碼被視為代碼塊.
x='A'+'B'--x+y
dict函數(shù):
dict的支持,dict全稱dictionary,在其他語言中也稱為map,使用鍵-值(key-value)【key是不可變的,value可變】存儲,具有極快的查找速度。
花括號{}表示這是一個dict,然后按照key: value, 寫出來即可。最后一個 key: value 的逗號可以省略。

如果key不存在,dict就會報錯:兩種方法解決:
①一是通過in判斷key是否存在:

②二是通過dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:

要刪除一個key,用pop(key)方法,對應(yīng)的value也會從dict中刪除:
set:set和dict類似,也是一組key的集合,但不存儲value。由于key不能重復(fù),所以,在set中,沒有重復(fù)的key。
tuple:創(chuàng)建tuple和創(chuàng)建list唯一不同之處是用( )替代了[ ]。tuple沒有 append()方法,也沒有insert()和pop()方法。
九九乘法表:
今天做了一張乘法口訣表,非常激動,不同形式的輸出。特別要說明的是‘end=’是 實現(xiàn) 取消自動換行符,并能夠按照自己的設(shè)計實現(xiàn)換行,從而生成三角形乘法表。


!表示反轉(zhuǎn)邏輯表達式的值,True變?yōu)镕alse,F(xiàn)alse變?yōu)門rue
'c' in 'abc'為True
!('c' in 'abc')為False
!與=號連在一起表示不等于,如
a!=b? 等價于 !(a==b)
```
def bubble_sort(alist):
for passnum in range(len(alist) - 1, 0, -1):
for i in range(passnum):
if alist[i] > alist[i+1]:
alist[i+1], alist[i] = alist[i], alist[i+1]
return alist
print(bubble_sort([1,4,7,2,5,8,3,6,9]))
```