Python 3(2)基本語法
Python3 入門專欄
http://blog.csdn.net/column/details/19679.html編碼基礎
原始碼編碼
預設情況下,python 3 原始碼檔案會以 UTF-8 編碼,所有的字元都是 unicode 字串,也可以在py檔案中通過以下為原始碼指定編碼(以下將編碼更改為 gbk):# -*- coding: gbk -*-
識別符號
python 中的識別符號有以下要求:- 第一個字元必須是字母或者下劃線“_”;
- 識別符號其他部分必須由字母、數字、下劃線組成;
- 識別符號對大小寫敏感;
保留字
python 標準庫提供了一個 keyword 模組,可以輸出當前版本的所有關鍵字:import keyword
print(keyword.kwlist)
輸出如下:['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or' , 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
運算子
- 算數運算子: +(加),-(減) ,*(乘) ,/(除),%(取模),**(冪,x**y 為 x 的 y 次方),//(除,取整數)
- 比較運算子:== ,!= ,> ,< ,>= ,<=
- 賦值運算子:=,+=,-=,*=,/=,**=,//=
- 位運算子:&(按位與),|(按位或),^(按位異或),~(按位取反),<<(左移運算),>>(右移運算)
- 邏輯運算子:and(布林與),or(布林或),not(布林非)
- 成員運算子:in,not in
- 身份運算子:is,is not(比較兩個物件的儲存單元)
== :是進行運算元值的比較;is :是進行運算元記憶體地址的比較,x is y 相當於 id(x) == id(y);
1 == 1 # true
a = 1; b = 1
a == b # true
a is b # false
id(a) == id(b) # true
行與縮排
python 不像 Java,C++ 使用分號來劃分程式碼語句,使用大括號{}來劃分程式碼塊,而是使用縮排和段落來劃分程式碼塊和程式碼語句,如下:if True:
print("item1")
else:
print("item2")
python通常是一行寫完一句程式碼語句,如果程式碼過長,可以使用反斜槓 \ 來實現多行語句,如下:greeting = "Are" + " you" + " OK?"
#等同於
greeting = "Are" + \
" you" + \
" OK?"
在 [] ,{},() 中的多行語句,可以不是用 \,如下:list_sample = ["Are", "you",
"OK", '?']
python 不提倡將多行語句寫在同一行中,如果非要這麼做,可以使用分號隔開,但是不提倡這麼做:user = "assad"; print("Hello " + user)
註釋
單行註釋是以 # 開頭的;多行註釋以 ''' ''' 或 """ """ 包含;# 單行注射
'''
多行註釋
多行註釋
'''
"""
多行註釋
多行註釋
"""
標準輸入輸出
標準輸出print 函式為標準流輸出函式,預設輸出是換行的,如果需要不換行的輸出,需要在 print 函式入參變數加上 end=“”:val1 = "a"
val2 = "b"
# 換行輸出
print(val1)
print(val2)
# 不換行輸出
print(val1, end=" ")
print(val2, end=" ")
print()
以上程式碼輸出結果:aba b標準輸入input 函式為標準流輸出函式,引數為提示性的字串,返回值為使用者輸入字串,使用該語句會導致一個執行緒阻塞;str_input = input("please input something: ") # 獲取使用者輸入
print("you input:" + str_input) # 列印使用者輸入
input("Enter anything to exit")
基本資料型別
不像Java , C++ 等強型別語言,python 是一種動態語言,在宣告變數或字面量時,不需要為其宣告資料型別,python 會根據賦值的字面量或物件自動轉換型別;python3 中有6個標準的資料型別:Number(數字),String(字串),List(列表),Tuple(元組),Sets(集合),Dictionary(字典);- String,List,Tuple 都屬於 Sequence 序列,內含的元素都是有序排列的;
- Number,String,Tuple ,Sets 是不可更改的物件,List,Dictionary 是可變物件;
var = "Hello"
var1 = var2 = var3 = 12
var4, var5, var6 = 10, 2.33, "Hello"
刪除引用可以使用del 操作符來刪除對於物件的引用,如下:var4, var5, var6 = 10, 2.33, "Hello"
del var4
del var5, var6
檢驗物件型別可以使用type 函式獲取變數物件型別,也可以使用isinstance 函式判斷變數物件是否為某個型別;var = 12
print(type(var)) # 輸出:<class 'int'>
print(type(var) == int) # 輸出 True
print(isinstance(vat, int)) # 輸出 True
這兩個函式判斷型別的區別如下:- type():不會認為子型別是一種父型別;
- isinstance():會認為子型別是一種父型別;
數字 Number
python3 支援的數字型別有 int(整型),float(浮點型),bool(布林),complex(複數);python3 中的整型只有 int 這一種,即長整型,沒有 python2 中的 long;var_int, var_float, var_bool, var_complex = 20, 23.33, True, 4+3j
print(type(var_int)) # 輸出:<class 'int'>
print(type(var_float)) # 輸出:<class 'float'>
print(type(var_bool)) # 輸出:<class 'bool'>
print(type(var_complex)) # 輸出:<class 'complex'>
字串 String
python 可以使用 ' ' 或 " " 來指定一個字串,這兩種符號的含義完全相同(不像 PHP 等會有字面量引用和解析引用的區別),使用 + 作為字串連線符,字串會按字面意義級聯字串;# 以下 4 個變數值相同
str1 = 'This is a String'
str2 = "This is a String"
str3 = "This"" is"" a"" String"
str4 = "This" + " is" + " a" + " String"
可以使用三引號 """ """ 或 ''' ''' 來指定一個跨行字串(該字串輸出時會保留跨行格式);str3 = """This is paragraph 1
This is paragraph 2 """
如上str3 輸出時,會輸出以下:This is paragraph 1
This is paragraph 2類似C語言,字串可以被索引和擷取;加號(+)是字串連線運算子,星號(*)是重複操作;
字串的元素不能修改;
var = "Hello World!"
print(var[0]) # 訪問var第0個字元:H
print(var[1:4]) # 訪問var第1到第3個字元:ell
print(var[:4]) # 訪問var第0到第4個字元:Hell
print(var[6:]) # 訪問var第6到最後一個字元:World!
print(var *2 ) # 重複輸出 var : Hello World!Hello World!
列表 List
列表可以完成大多數集合類的資料結構實現,列表中元素的型別可以不相同,它支援數字,字串甚至可以包含列表;List寫在方括號 [ ] 之間,元素用逗號隔開;列表同樣可以被索引和擷取,列表被擷取後返回一個包含所需元素的新列表;加號(+)是列表連線運算子,星號(*)是重複操作;
列表中的元素不能修改;
list1 = [12, 2.33, "Hello", "World"]
list2 = ["!", 1, 2]
print(list1) # 輸出列表:[12, 2.33, 'Hello', 'World']
print(list1[0]) # 輸出第1個元素:12
print(list1[1:3]) # 輸出第2到第3個元素:[2.33, 'Hello']
print(list1[2:]) # 輸出從第3個元素開始的所有元素:['Hello', 'World']
print(list1 * 2) # 輸出2次列表:[12, 2.33, 'Hello', 'World', 12, 2.33, 'Hello', 'World']
print(list1 + list2) # 連線列表:[12, 2.33, 'Hello', 'World', '!', 1, 2]
元組 Tuple
元組(tuple)與列表類似,不同之處在於元組的元素不能修改;元組同樣可以被索引和擷取;元組寫在小括號 ( ) 裡,元素之間用逗號隔開;
tuple1 = ("abcd", 123 , 2.333, "Hello", 70.2)
tuple2 = () # 空元組
tuple3 = (20,) # 只包含一個元素的元組
集合 Sets
集合(set)是一個無序不重複元素的序列,主要功能是進行成員關係測試和刪除重複元素。可以使用大括號 { } 或者 set() 函式建立集合,但是建立一個空集合必須用 set();student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}
sey_empty = set()
print(student) # 輸出集合,重複的元素被自動去掉:{'Mary', 'Tom', 'Jack', 'Jim', 'Rose'}
字典 Dictionary
字典是一種對映型別,字典用"{ }"標識,它是一個無序的鍵(key) : 值(value)對集合;鍵(key)必須使用不可變型別,在同一個字典中,鍵(key)必須是唯一的;
dict1 = {"name": "assad", "age": 20, "city": "Guangzhou"}
dict2 = {}
dict2["one"] = "are you ok"
dict2[1] = 12
print(dict1["name"]) # 輸出 dict1 中 key = "name" 的 value
print(dict2[1]) # 輸出 dict2 中 key = 2 的 value
print(dict1.keys()) # 輸出 dict1 的所有 key
print(dict1.values()) # 輸出 dict1 的所有 value
常用的型別轉換函式
int(x [,base]) | 將x轉換為一個整數 |
float(x) | 將x轉換到一個浮點數 |
complex(real [,imag]) | 建立一個複數 |
str(x) | 將物件 x 轉換為字串 |
repr(x) | 將物件 x 轉換為表示式字串,類似 Java 的類 toString() 方法 |
eval(str) | 計算在字串中的有效Python表示式,並返回一個物件,類似 js 的 eval() 函式 |
tuple(s) | 將序列 s 轉換為一個元組 |
list(s) | 將序列 s 轉換為一個列表 |
set(s) | 轉換為可變集合 |
frozenset(s) | 轉換為不可變集合 |
dict(d) | 建立一個字典。d 必須是一個序列 (key,value)元組。 |
流程控制
條件控制
python 條件語句的基本語法如下,同樣的,python 也支援 if 巢狀:if condition_1:
statement_block_1
elif condition_2:
statement_block_2
else:
statement_block_3
示例:age = int(input("請輸入你的年齡:"))
print()
if age < 0:
print("非法輸入")
elif age < 18:
print("未成年人請自覺離開")
else:
print("新世界大門為你開啟")
迴圈控制
python 迴圈語句支援 while 和 for 語句,同樣支援 break,continue 關鍵字;while 語法:while condition:
statement_block
示例:while True:
print "Are you Ok?"
for 語法for <variable> in <sequence>:
<statements>
else:
<statements>
示例:# 指定迴圈次數遍歷
for i in range(5):
print i
# 等同於
for i in range(0,5):
print i
for i in range(10,100):
print i
# 遍歷序列
students = ["Tom", "Jim", "Mary", "Tom", "Jack", "Rose"]
for e in students:
print(e)
greeting = "Are you OK? Mi fans!"
for ch in greeting:
if(ch == 'M'):
print "include charatcer M !"
break
pass 語句python中 pass是空語句,是為了保持程式結構的完整性,pass 不做任何事情,一般用做佔位語句,如下:while True:
pass # 等待鍵盤中斷
# 一個最小的實現類
class MyEmptyClass:
pass
模組python 使用用 import 或者 from...import 來匯入相應的模組,語法如下:# 將整個模組匯入
import somemodule
#從某個模組中匯入某個函式
from somemodule import somefunction
# 從某個模組中匯入多個函式,
from somemodule import func1, func2, func3
# 將某個模組中的全部函式匯入
from somemodule import *
模組搜尋路徑當直譯器遇到 import 語句,如果模組在當前的搜尋路徑就會被匯入,搜尋路徑是由一系列目錄名組成的,Python直譯器就依次從這些目錄中去尋找所引入的模組,搜尋路徑被儲存在標準庫 sys 模組中的 path 變數,可以通過以下程式碼獲取 sys.path:import
相關推薦
Python 3(2)基本語法
Python3 入門專欄http://blog.csdn.net/column/details/19679.html編碼基礎原始碼編碼預設情況下,python 3 原始碼檔案會以 UTF-8 編碼,所有
python 基礎(一)基本語法
特點
語法對比
從語法上分類:
1\面向物件:java(現大比較流行) c#(因為安卓市場的出現慢慢淡出)
2\面向過程:C(沒有類),(oracle)pl/sql---一直排第一位,處理大資料速度比較快免費的服務是收費的,(sqlserver)t-sql(微軟的 中小型
thymeleaf(2)基本語法
以下來源於網路。
標準表示式語法
它們分為四類:
• 1.變量表達式
• 2.選擇或星號表示式
• 3.文字國際化表示式
• 4.URL表示式
變量表達式
變量表達式即OGNL表示式或Spring EL表示式(在Sprin
ECMAScript 學習筆記(2)--基本類型及語法相關
ECMAScript 學習筆記1、變量名區分大小寫; 註意代碼塊的概念。變量分為原始值和引用值:原始值存儲在棧,引用值存儲在堆(引用值一般是一個指針或對象名、函數名)。在C語言中編譯的程序占用的內存分為以下幾個部分:棧區(由系統分配/內存塊連續)、堆區(由程序員分配與釋放或系統結束後釋放/鏈表結構不連續的內存
python面向物件學習(二)基本語法
目錄
1. dir內建函式
2. 定義簡單的類(只包含方法)
2.1 定義只包含方法的類
2.2 建立物件
2.3 編寫第一個面向物件程式
3. 方法中的self引數
3.1 案例改造 —— 給物件新增屬性
3.2 使用 self 在
Python學習(2)—— 運算子與基本資料型別
運算子與基本資料型別
運算子有以下五種:
算數運算:
比較運算:
邏輯運算:
賦值運算:
成員運算:
以上圖片轉載來自:http://www.cnblogs.com/wupeiqi/ 。
基本資料型別認識
數字 (in
小白學 Python 爬蟲(2):前置準備(一)基本類庫的安裝
人生苦短,我用 Python
前文傳送門:
小白學 Python 爬蟲(1):開篇
本篇內容較長,各位同學可以先收藏後再看~~
在開始講爬蟲之前,還是先把環境搞搞好,工欲善其事必先利其器嘛~~~
本篇文章主要介紹 Python 爬蟲所使用到的請求庫和解析庫,請求庫用來請求目標內容,解析庫用來解析請
java8之lambda表達式(1)-基本語法
com nal called new collect starting 代碼 face 使用 參考:http://www.cnblogs.com/andywithu/p/7344507.html
lambda表達式,即帶有參數的表達式,為更清晰地理解lambda表達式,先看
C語言學習系列(六)基本語法
xor 12px 左移 程序 str 繼續 p s type false 一、C運算符
算術運算符(語法和java類似或基本一樣略過不再描述)
關系運算符(略)
邏輯運算符(略)
位運算符
運算符描述實例
&
如果同時存在於兩個操作數中,二
第一個python程序(2)
小結 nts 技術 數學公式 spa 但是 漂亮 num 回車 輸入和輸出
輸出
用print加上字符串,就可以向屏幕上輸出指定的文字。比如輸出‘hello, world‘,用代碼實現如下:
>>> print ‘hello, world‘
print語
java入門學習(2)—基本數據類型
堆內存 類指針 erl 相互 lean 就是 沒有初始化 true ++ 1、變量:定義變量:【數據類型】 變量名 = 賦值(這樣定義的變量一般屬於局部變量,放置在棧內存中);
2、標識符:可以有字母(可以使任意文字),數字,下劃線,$等組成;但是不能以數字開頭,不能是保留
MySQL數據庫操作(2)基本操作
大於 ase 存在 delete div .... desc 搜索 查看數據庫 創建數據庫:CREATE DATABASE [IF NOT EXISTS] 庫名例子:CREATE DATABASE `mydb`;CREATE DATABASE IF NOT EXISTS `
53. Python 爬蟲(2)
expires www. als aid rgb user col pri request CookieRequests通過會話信息來獲取cookie信息Cookie的五要素: Name value domain path expires打印cookie
Python 學習(二)基本認識
python語句 clas return hello 文檔字符串 else 字符串 年齡 text 基礎知識
一 Python 標識符
在 Python 裏,標識符由字母、數字、下劃線組成。
在 Python 中,所有標識符可以包括英文、數字以及下劃線(_),但不能以數字
python學習(2)關於字符編碼
英語 國標 學習 utf for 美國 電腦 二進制 str 關於字符編碼的學習內容筆記如下:
1、計算機只能用0和1來進行記錄和存儲。計算機是二進制。
2、ASCII(American Standard Code for Information Interchange,美
perl學習(1)基本語法
log 跳過 默認值 斜線 進位 字母 劃線 小寫 perl 一: 如何運行
在linux終端,直接輸入 perl filenaem.pl
Perl腳本在解釋執行時和shell腳本一樣,自頂向下,跳過sub定義部分依次執行。
二:標量
1: 標量
可以是數
Python基礎(2):__doc__、文檔字符串docString、help()
png Go net dex django index csdn 自定義模塊 pan OS:Windows 10家庭中文版,Python:3.6.4
Python中的 文檔字符串(docString) 出現在 模塊、函數、類 的第一行,用於對這些程序進行說明。它在執行的
Python基礎(2)——運算符
系列 所有 不為 相等 int inf 技術分享 包括 表格 一、Python算術運算符
以下假設變量a為10,變量b為21:
以下實例演示了Python所有算術運算符的操作:
1 #!/usr/bin/python3
2
3 a = 21
4 b = 10
Python基礎(2):列表
list:列表,python內建的一種資料型別。是一種有序集合,可以隨時新增和刪除其中的元素。
1,列表的定義
li1=[] #定義一個空列表
li2=[1,2,3,'hello'] #數字元素直接新增,字串元素要用括號
python學習(二)List語法基礎與常用操作
- list 是列表,也叫陣列,用[ ]括號,並用逗號隔開,裡面可以任意型別,字串,數字,都可以。**
取值用 list[角標],開始從0開始,如:list2=[1,2,”字串”],如果取list[2],那麼就是:字串
list的增加資料的操作 1、lis