国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python入門小菜筆記

2019-11-08 02:22:59
字體:
來源:轉載
供稿:網友

標簽: Python


安裝與運行

Ubuntu下跑的,貌似裝了一些軟件以后已經有裝好的Python了,直接在控制臺上輸入python2或者python3進入相應的版本,第一行即給出了具體的版本號,最新的是Python 2.7.12Python 3.5.2,目前2具有更好的兼容性。

python寫的程序為*.py,終端進入對應文件夾下python2 *.py即可運行。

另外又裝了一款多平臺IDE, Pycharm,在Windows里跑很方便。


標識符

以下劃線開頭的標識符是有特殊意義的。以單下劃線開頭(_foo)的代表不能直接訪問的類屬性,需通過類提供的接口進行訪問,不能用”from xxx import *”而導入;以雙下劃線開頭的__foo代表類的私有成員;以雙下劃線開頭和結尾的__foo__代表python里特殊方法專用的標識,如__init__()代表類的構造函數。


基本語法

和C相比而言,有幾處不同:

冒號表示段落的開始。用縮進代替花括號,但必須嚴格縮進一樣數量的空格。建議你在每個縮進層次使用 單個制表符兩個空格四個空格 , 切記不能混用。錯誤提示IndentationError: unindent does not match any outer indentation level

使用斜杠( /)將一行的語句分為多行顯示,而[], {}() 括號就不需要。

注釋符 # 或者 三引號

在同一行中使用多條語句,語句之間使用分號(;)分割,行末可以不加。


輸入輸出

x=input()x=input("Please input a digit")PRint xprint 'abc'print 3

在IDE中要支持中文,必須在設置中改變編碼類型為UTF-8,并在行首加

# coding=utf-8

如果還是報錯,注意這句話等號兩邊都不要加空格!

input:會根據用戶的輸入來做類型的轉換 raw_input:則會把用戶的輸入都作為一個字符串來處理(所見即所得)

def input(prompt): return eval(raw_input(prompt))# eval(str)用來計算在字符串中的有效Python表達式,并返回一個對象 # 兩次都輸入3+5x = input("x:") print x # 輸出8y = raw_input("y:")print y # 輸出3+5

輸出類似于C中sprintf的寫法

print "My name is %s and weight is %d kg!" % ('Zara', 21)

解決py2會自動輸出回車的方法

from __future__ import print_function # 用py3的print的寫法print(x, end="") # 表示結束符不用回車

也可以對整個文件做處理,新建文件、寫入內容、刪除文件。系統指令很多,要用時查表。

fo = open("a.cpp", "wb") # 打開/新建文件fo.write("a=10/nprint a") # 寫入內容fo.write(r''' #include <bits/stdc++.h>int main(){ int x, y; while(~scanf("%d%d", &x, &y)) printf("%d + %d = %d/n", x, y, x+y); return 0;}''') # r可以避免轉義字符生效fo.close() # 關閉文件import os # 載入os庫os.remove("a.cpp") # 移除文件

內置對象

簡單類型:int long float complex bool 容器類型:string list tuple

變量賦值不需要類型聲明。

可以為多個對象指定多個變量。例如下面兩句話等價,前面的賦值更加簡潔。

a, b, c = 1, 2, "john"a = 1; b = 2; c = "John"

要調用一些數學變量和常用函數,先載入頭文件再調用

import mathmath.pimath.sin(x)help(math)help(math.acos)

可以進行復數運算

x=2+3j 或 complex(2, 3)y=4+7jx/y

string使用方便 Python 接收單引號( ' )、雙引號( " )、三引號( '''""") 來表示字符串,引號的開始與結束必須的相同類型的。 其中三引號可以引用多行。 +表示連接,*表示重復。

a = "python"print a[2:5]*2+a[0]+a[2:]

列表[]等價于C語言里的數組 +表示連接,*表示重復。

list = [4,5,'pp']len(list) # 讀取容量大小list.append(x) # 塞入x

元組()類似于列表,但只讀,不能二次賦值,系統會報錯

tuple = (4,5,'pp')ct = list(tuple) # 元組轉換到列表,可進行二次賦值tt = tuple(ct) # 反之,將列表轉換到元組

元字典{}等價于C++里的map

dict = {}dict['one'] = "This is one" # dict[key] = valuedict[2] = "This is two"tinydict = {'name': 'john','code':6734, 'dept': 'sales'} # dict = {key : value}print dict['one'] # 輸出鍵為'one' 的值print dict[2] # 輸出鍵為 2 的值print tinydict # 輸出完整的字典print tinydict.keys() # 輸出所有鍵print tinydict.values() # 輸出所有值

刪除對象

del a

運算符

和C差不多的就不贅述了,記一些不一樣的 // 等價于對除法結果取floor() ** 等價于pow() ~ 求補運算 <>!=

邏輯運算符用單詞直接給 and or not

一些測試運算符,非常接近正常語言 in not in 成員是否屬于某一類 is is not 對象實體一致性


循環語句

設置了while...else...以及for...else... 正常循環時,執行while或者for后會執行else,但如果中途跳出,則不能執行else

for循環迭代體有多種設置方式

x = [**, **, **]for y in x: **** # y作為迭代對象 for index in range(len(x)): **** # index為數組下標,range返回一個序列數組

時間函數

import timetime.time() # 自從1970年1月1日0點經過了多少秒time.localtime() # 化到struct_time元組time.asctime() # 能友好顯示當地時間print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()) # 2017-02-15 15:09:42

函數

定義函數后調用,其中參數都是直接引用的,和C不同。

def 函數名(參數x, y, z, *var): “一些說明” 函數體 return ***

調用函數時可以選擇一一對應傳入參數;也可以打亂順序指定變量名,此時也可省略一些參數。其中*表示參數數量不確定,傳入多個以后會保存在元組var里。

函數名(xx, yy, zz)函數名(y=yy, x=xx, z=zz)

lambda函數 lambda的主體是一個表達式,而不是一個代碼塊。僅僅能在lambda表達式中封裝有限的邏輯進去。

sum = lambda arg1, arg2: arg1 + arg2;

模塊

在同一目錄下生成新文件xxx.py,在其他python文件下調用函數只需

import xxxxxx.function()dir(xxx) # 查看xxx.py里的函數

想在模塊里使用全局變量,則先聲明后再使用

global var

異常

異常類型系統已有定義。也可以用戶自定義。為了保證代碼出錯時不會立刻停止,

try: # 一段試著被執行的代碼 fh = open("testfile", "w") fh.write("這是一個測試文件,用于測試異常!!")except IOError:# 當try里的內容出現錯誤,則在下面的except里找對應錯誤 print "Error: 沒有找到文件或讀取文件失敗"else:# 不出現錯誤則執行 print "內容寫入文件成功" fh.close()

其他功能

可擴展:如果你需要一段運行很快的關鍵代碼,或者是想要編寫一些不愿開放的算法,你可以使用C或C++完成那部分程序,然后從你的Python程序中調用。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 合阳县| 玛曲县| 明溪县| 海城市| 石楼县| 巴林左旗| 雅安市| 浪卡子县| 邵东县| 罗城| 庆元县| 开化县| 定日县| 丹阳市| 常山县| 珲春市| 万盛区| 易门县| 望谟县| 昌宁县| 沁源县| 宁强县| 来宾市| 丹江口市| 云和县| 连平县| 合水县| 宿松县| 溆浦县| 雅江县| 平谷区| 兴隆县| 武川县| 衡南县| 涪陵区| 巴彦淖尔市| 弋阳县| 蒲江县| 大理市| 富阳市| 定远县|