亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python-基礎(chǔ)-入門 簡介

 更新時間:2014年08月09日 12:31:46   作者:wklken  
這篇文章主要介紹了Python-基礎(chǔ)-簡介入門的相關(guān)資料,需要的朋友可以參考下

Python簡介及入門

python
為什么是python

選擇自己喜歡的語言,這往往不容易,更多的是根據(jù)需求

話說,之前是java,大學用了三年+實習半年,后來入職做測試開發(fā)后,碰到了python

到最后,轉(zhuǎn)python開發(fā)了

寫起來快,縮進,不用打花括號,省手指,讀起來舒服…..

喜歡,貌似不需要什么太牛的理由,用著順手舒服就行

什么語言之爭,編輯器之戰(zhàn)啥的,能忽略就忽略吧,能無視就無視吧,工具,夠用,用這舒服就ok了,浪費口水精力爭來爭去圖個啥呢

Life is short, I use python!

簡介

python介紹: 到官網(wǎng)自個看

有興趣可以看看: 解釋性語言+動態(tài)類型語言+強類型語言

優(yōu)點缺點: 自己google

國際慣例

交互模式:(主要拿來試驗,可以試試 ipython 支持tab自動補全)

復(fù)制代碼 代碼如下:

$python
>>> print 'hello world'

腳本

復(fù)制代碼 代碼如下:

#!/usr/bin/env python
print 'hello world'

環(huán)境及其他
基本安裝: 自己google[安裝和配置一搜一大把,基本技能,不解釋,貌似很久之前我也寫了一篇http://blog.csdn.net/wklken/article/details/6311292

環(huán)境:

建議python2.7 + easy_install + pip + virtualenv + ipython
開發(fā)工具:

vim/sublimetext2/eclipse+pydev/pycharm
建議初學idle或者pydev吧,用著順手就行,
關(guān)于編碼風格:

谷歌的:http://google-styleguide.googlecode.com/svn/trunk/pyguide.html
中文: http://www.bsdmap.com/articles/zh-google-python-style-guide/
--------------------------------------------------------------------------------

入門
不扯,開始

縮進
Python 函數(shù)沒有明顯的 begin 和 end,沒有標明函數(shù)的開始和結(jié)束的花括號。唯一的分隔符是一個冒號 (:),接著代碼本身是縮進的。

例子:

復(fù)制代碼 代碼如下:

#函數(shù)
def func(value):
    print value  #縮進

    if value == 1:
        value += 1
    elif value == 2:
        pass
    else:
        value += 10

標識符
變量是標識符的例子。 標識符 是用來標識 某樣東西 的名字。在命名標識符的時候,你要遵循這些規(guī)則:

1.python中的標識符是區(qū)分大小寫的。

2.標示符以字母或下劃線開頭,可包括字母,下劃線和數(shù)字,大小寫敏感

3.以下劃線開頭的標識符是有特殊意義的。

•以單下劃線開頭(_foo)的代表不能直接訪問的類屬性,需通過類提供的接口進行訪問,不能用“from xxx import *”而導入;
•以雙下劃線開頭的(__foo)代表類的私有成員;
•以雙下劃線開頭和結(jié)尾的(foo)代表python里特殊方法專用的標識,如__init__()代表類的構(gòu)造函數(shù)。
4.標識符不能是保留字

and            elif        global   or    yield
assert         else        if       pass
break          except      import   print
class          exec        in       raise
continue       finally     is       return
def            for         lambda   try
del            from        not      while
變量
賦值語句

•賦值語句建立對象引用值
•變量名在首次賦值時會被建立
•變量名在引用前必須先賦值,不能引用未聲明賦值的變量
賦值方式

•簡單賦值
Variable(變量)=Value(值)

s = ‘spam'
•多變量賦值
python中原始的元組和列表賦值語句形成,最后已被通用化,以接受右側(cè)可以是是任何類型的序列,只要長度相等即可。注意,長度一定相等

Variable1,variable2,...=Value1,Value2,...

s,h = ‘a(chǎn)','b'  元組賦值,位置性  【常用】
[s,h] =[‘a(chǎn)','b'] 列表賦值,位置性
a,b,c,d = ‘spam' 序列賦值,通用性
a,*b = ‘spam' 拓展序列解包(python3)

•多目標賦值

a=b=variable

s = h = ‘spam' 多目標賦值
注意:多個變量內(nèi)存中指向同一對象,對于可變類型需要,修改一個會對其他造成影響

•自變賦值
如+=,-=,*=等。

在自變賦值中,python僅計算一次,而普通寫法需計算兩次;

自變賦值會修改原始對象,而不是創(chuàng)建一個新對象。

s +=42 增強賦值
x += y
優(yōu)點:

程序員輸入更少

左側(cè)只需計算一次,優(yōu)化技術(shù)自動原處修改,更快
l +=[] 原處修改
l = l+[] 復(fù)制,生成新的對象
運算符
一個表達式可以分解為運算符和操作數(shù)

運算符 的功能是完成某件事,它們由如+這樣的符號或者其他特定的關(guān)鍵字表示

運算符需要數(shù)據(jù)來進行運算,這樣的數(shù)據(jù)被稱為 操作數(shù)

運算符優(yōu)先順序列表(從最高到最低)

運算符 描述

'expr'  字符串轉(zhuǎn)換
{key:expr,...}  字典
[expr1,expr2...]    列表
(expr1,expr2,...)   元組
function(expr,...)  函數(shù)調(diào)用
x[index:index]  切片
x[index]    下標索引取值
x.attribute 屬性引用
~x  按位取反
+x,-x   正,負
x**y    冪
x*y,x/y,x%y 乘,除,取模
x+y,x-y 加,減
x<<y,x>>y   移位
x&y 按位與
x^y 按位異或
x|y 按位或
x<y,x<=y,x==y,x!=y,x>=y,x>y 比較
x is y,x is not y   等同測試
x in y,x not in y   成員判斷
not x   邏輯否
x and y 邏輯與
x or y  邏輯或
lambda arg,...:expr Lambda匿名函數(shù)
結(jié)合規(guī)律

運算符通常由左向右結(jié)合,即具有相同優(yōu)先級的運算符按照從左向右的順序計算

計算順序

默認地,運算符優(yōu)先級表決定了哪個運算符在別的運算符之前計算。然而,如果你想要改變它們的計算順序,你得使用圓括號。好的做法:默認對復(fù)雜的運算加括號,而不是依賴于默認結(jié)合和計算順序

真值
真值測試
•任何非零數(shù)字或非空對象都為真
•數(shù)字零,空對象以及特殊對象None都為假
•比較和相等測試都會遞歸地運用到數(shù)據(jù)結(jié)構(gòu)中
•比較和相等測試會返回True或False
真值表

復(fù)制代碼 代碼如下:

對象/常量 值
"" 假
"string" 真
0 假
2>=1 真
-2<=-1 真
()空元組 假
[]空列表 假
{}空字典 假
None 假


布爾表達式
三種布爾表達式運算符

復(fù)制代碼 代碼如下:

x and y
x or y
not x


比較
•數(shù)字通過相對大小進行比較
•字符串時按照字典順序的,一個字符一個字符比較
•列表和元組從左到右對每部分的內(nèi)容進行比較
•字典通過排序后的鍵值列表進行比較
•數(shù)字混合類型比較在python3是錯誤的,但是python2.6支持,固定但任意的排序規(guī)則
布爾數(shù)
•有兩個永遠不改變的值True,F(xiàn)alse
•布爾是整型的子類,但不能被再繼承
•沒有__nonzero__()方法的對象的默認值是True
•對于值為0的任何數(shù)字或空集,值False
•在數(shù)學運算中,Bollean值的True和False分別對應(yīng)于1和0
基本控制流
if
基本的條件測試語句,用來判斷可能遇到的不同情況,并針對不同的情況進行操作

基本形式

復(fù)制代碼 代碼如下:

if <條件>:
   <語句>
elif <條件>:
   <語句>
else:
   <語句>

注意

python根據(jù)縮進判斷, elif和else部分是可選的

例子:

復(fù)制代碼 代碼如下:

a = 1
b = 2
c = 3;d=4 #兩個放一句用分號隔開,不過建議分行

if a < b and c < d:
    print("branch a")
elif a == b:
    print("branch b")
else:
    print("branch c")
switch

python 本身沒有 switch 語句,若需要,用if/elif/else實現(xiàn)完成同樣的工作,某些情況可以考慮用字典

也可以用dict的形式

if/else三元運算符

A = ((X and Y) or Z)
A = Y  if X else Z
例: a = ‘t' if x else ‘a(chǎn)'
for
•基本語法
循環(huán)控制語句,可以用于循環(huán)遍歷某一序列

else塊可選,在循環(huán)終止的時候執(zhí)行,若是break終止循環(huán),else不執(zhí)行

格式:

復(fù)制代碼 代碼如下:

for <對象變量> in <對象集合>:
if<條件>:
break
if<條件>:
continue
<其他語句>
else:
<其他語句>


注意:

1.對象集合可以是列表,字典以及元組等
2.for..in循環(huán)對于任何序列都適用
3.for遍歷一個字典時,遍歷的是字典的鍵
•rang & xrange
可以通過range()函數(shù)產(chǎn)生一個整數(shù)列表,完成計數(shù)循環(huán)

range([start,] stop[, step])

start可選參數(shù),起始數(shù)
stop終止數(shù),若為x,產(chǎn)生從0-(x-1)的整數(shù)列表
step可選參數(shù),步長,未寫默認為1
range(1,5) 包含序列為 [1,2,3,4]

xrange和range區(qū)別

(python3.x的可無視)

在Range的方法中,它會生成一個list的對象,但是在XRange中,它生成的卻是一個xrange的對象,當返回的東西不是很大的時候,或者在一個循環(huán)里,基本上都是從頭查到底的情況下,這兩個方法的效率差不多。但是,當返回的東西很大,或者循環(huán)中常常會被Break出來的話,還是建議使用XRange,這樣既省空間,又會提高效率。

復(fù)制代碼 代碼如下:

>>> print range(1, 5)
[1, 2, 3, 4]
>>> print xrange(1, 5)
xrange(1, 5)


在上面語句中,range返回了一個普通List,而xrange返回了一個特定的xrange類型的對象。由于 xrange 方法也創(chuàng)建整數(shù) list(其使用相同參數(shù)),所以它與 range 方法非常相似。但是,xrange 方法僅在需要時才在 list 中創(chuàng)建整數(shù)。當需要迭代大量整數(shù)時,xrange 方法更適用,因為它不會創(chuàng)建極大的 list,那樣會消耗大量計算機內(nèi)存。

while
與if語句類似,含一個條件測試語句,循環(huán),允許重復(fù)執(zhí)行一個語句塊。

可選else語句塊,同for的else塊。

格式:

復(fù)制代碼 代碼如下:

while <條件>:
   if <條件>:
      break
   if <條件>:
      continue
   <其他語句>
else:
   <語句>

說明:

•while循環(huán)條件變?yōu)镕alse的時候,else塊才被執(zhí)行
•若是使用break結(jié)束循環(huán),while可選的else塊不執(zhí)行
•python沒有do while或do until循環(huán)語句
break & continue & pass
break,終止循環(huán)語句,停止循環(huán),若是for/while循環(huán)中終止,其else不執(zhí)行

continue,結(jié)束當前,進入下一輪循環(huán) - 跳到最近所在循環(huán)的開頭處(來到循環(huán)首行)

pass 什么事也不做,只是空占位語句,它用于那些語法上必須要有什么語句,但程序什么也不做的場合

循環(huán)else塊 :只有循環(huán)正常離開時才會執(zhí)行,即

如果你從for或while循環(huán)中break終止 ,任何對應(yīng)的循環(huán)else塊將不執(zhí)行。記住,break語句也可以在for循環(huán)中使用

其他
編寫循環(huán)的技巧:
在迭代過程中修改迭代序列不安全(只有在使用鏈表這樣的可變序列時才會有這樣的情況)。如果你想要修改你迭代的序列(例如,復(fù)制選擇項),你可以迭代它的復(fù)本。使用切割標識就可以很方便的做到這一點

復(fù)制代碼 代碼如下:

>>> for x in a[:]: # make a slice copy of the entire list
...    if len(x) > 6: a.insert(0, x)

在字典中循環(huán)時,關(guān)鍵字和對應(yīng)的值可以使用 iteritems() 方法同時解讀出來

復(fù)制代碼 代碼如下:

>>> knights = {'gallahad': 'the pure', 'robin': 'the brave'}
>>> for k, v in knights.iteritems():
...     print k, v
...
gallahad the pure
robin the brave

在序列中循環(huán)時,索引位置和對應(yīng)值可以使用 enumerate() 函數(shù)同時得到。

復(fù)制代碼 代碼如下:

>>> for i, v in enumerate(['tic', 'tac', 'toe']):
...     print i, v

相關(guān)文章

  • python中日志logging模塊的性能及多進程詳解

    python中日志logging模塊的性能及多進程詳解

    使用Python來寫后臺任務(wù)時,時常需要使用輸出日志來記錄程序運行的狀態(tài),并在發(fā)生錯誤時將錯誤的詳細信息保存下來,以別調(diào)試和分析。Python的logging模塊就是這種情況下的好幫手。本文就介紹了python中日志logging模塊性能及多進程的相關(guān)資料,需要的朋友可以參考下。
    2017-07-07
  • Python 迭代器工具包【推薦】

    Python 迭代器工具包【推薦】

    迭代器工具在產(chǎn)生數(shù)據(jù)的時候?qū)@得非常便捷、高效,掌握了這些基本的方法之后,通過簡單的組合就可以獲得更多迭代器工具。
    2016-05-05
  • Pycharm配置autopep8實現(xiàn)流程解析

    Pycharm配置autopep8實現(xiàn)流程解析

    這篇文章主要介紹了Pycharm配置autopep8實現(xiàn)流程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-11-11
  • Python判斷兩個對象相等的原理

    Python判斷兩個對象相等的原理

    這篇文章主要介紹了Python判斷兩個對象相等的原理,需要的朋友可以參考下
    2017-12-12
  • 11月編程語言排行榜 Python逆襲C#上升到第4

    11月編程語言排行榜 Python逆襲C#上升到第4

    11月編程語言排行榜 Python逆襲C#上升到第4,無論在哪個榜單中 Python 都是保持著非同尋常的增長速度,為什么Python增長的這么快
    2017-11-11
  • python3中apply函數(shù)和lambda函數(shù)的使用詳解

    python3中apply函數(shù)和lambda函數(shù)的使用詳解

    本文主要介紹了python3中apply函數(shù)和lambda函數(shù)的使用詳解,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-02-02
  • 通過python實現(xiàn)隨機交換禮物程序詳解

    通過python實現(xiàn)隨機交換禮物程序詳解

    這篇文章主要介紹了通過python實現(xiàn)隨機交換禮物程序詳解的,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-07-07
  • Python正則表達中re模塊的使用

    Python正則表達中re模塊的使用

    這篇文章主要介紹了Python正則表達中re模塊的使用,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-09-09
  • python實現(xiàn)文件批量重命名

    python實現(xiàn)文件批量重命名

    這篇文章主要為大家詳細介紹了python實現(xiàn)文件批量重命名,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • Python利用Selenium實現(xiàn)彈出框的處理

    Python利用Selenium實現(xiàn)彈出框的處理

    經(jīng)常出現(xiàn)在網(wǎng)頁上的基于JavaScript實現(xiàn)的彈出框有三種,分別是?alert、confirm、prompt?。本文主要是學習如何利用selenium處理這三種彈出框,感興趣的可以了解一下
    2022-06-06

最新評論