### Python基本語(yǔ)法
#### 編碼規(guī)范
默認(rèn)情況下,python3源文件以UTF-8編碼,所有字符串都是unicode字符串。同時(shí)可以可以指定源文件的不同編碼文件開頭加上。
> \# -*- coding: UTF-8 -*-
>
> \# coding=utf-8(等號(hào)兩邊不能有空格)
允許在源文件中使用utf-8字符集中的字符編碼,對(duì)應(yīng)的適合語(yǔ)言為中文等。
#### print()函數(shù)
1. 字符串和數(shù)值類型可以直接輸出
2. 無(wú)論什么類型,數(shù)值,布爾,列表,字典...都可以直接輸出
3. 格式化輸出 如:%s :表示字符串 ;%d表示十進(jìn)制整數(shù);%f 表示十進(jìn)制浮點(diǎn)數(shù)
4. Python中總是默認(rèn)換行的
如:
```
print("Hello World")
s = 'Hello'
print(s)
name = 'John'
print('%s是最棒噠!' % name)
print('我真的是換行的,若不想換行,添加end參數(shù)')
print('我是不換行噠!',end="")
```
#### 變量
變量:值會(huì)發(fā)生變化的的量,與常量相對(duì).
聲明變量的格式:變量名 = 值 (值的類型決定變量的類型)
比如:
```
name = ‘John’ # 聲明了變量name
age = 20
```
注釋:
(1)單行注釋:#
(2)多行注釋:''' '''
Python允許你同時(shí)為多個(gè)變量賦值。
例如:
```
a = b = c = 1
```
以上實(shí)例,創(chuàng)建一個(gè)整型對(duì)象,值為 1,從后向前賦值,三個(gè)變量被賦予相同的數(shù)值。
可以為多個(gè)對(duì)象指定多個(gè)變量。
例如:
```
a, b, c = 1, 2, "running"
a,b = b,a
```
#### 標(biāo)識(shí)符
在程序中自定義的類名、函數(shù)名、變量等符號(hào)和名稱,叫做標(biāo)識(shí)符。
標(biāo)識(shí)符的命名需要符合如下規(guī)范:
```
(1)標(biāo)識(shí)符由字母、數(shù)字和下劃線組成
(2)不能使用數(shù)字開頭,即第一個(gè)字符必須是字母或下劃線_
(3)標(biāo)識(shí)符對(duì)大小寫敏感
(4)不可以使用關(guān)鍵字,可以使用下面代碼查看關(guān)鍵字:
import keyword
print(keyword.kwlist)
```
比如:合法的標(biāo)識(shí)符
```
name
User
user_name
user_age
GOODS
student_name
book20
```
不合法的標(biāo)識(shí)符
```
user&name # & 不屬于標(biāo)識(shí)符的組成字符,即包含非法字符
8name # 不能以數(shù)字開頭
yield # yield是關(guān)鍵字,不能作為標(biāo)識(shí)符
```
標(biāo)識(shí)符的命名,除了要遵守上文所述的幾條規(guī)則外,在不同場(chǎng)景中其命名也是有一定規(guī)則的,如下所示:
- 函數(shù)名、類中屬性名、類中的方法名:全部使用小寫字母,多個(gè)字母之間可用下劃線`_`分隔,例如`user_age`
- 常量名:全部使用大寫字母,多個(gè)字母之間可用下劃線`_`分隔,例如`YEAR`
- 類名:?jiǎn)卧~首字母大寫,例如`Goods`
- 包名:應(yīng)盡量簡(jiǎn)短,全部使用小寫字母,多個(gè)字母間可用`.`分隔,例如`com.python`
- 模塊名:應(yīng)盡量簡(jiǎn)短,全部使用小寫字母,多個(gè)字母間可用下劃線`_`分隔,例如 `user_login`
#### 數(shù)據(jù)類型
對(duì)于**數(shù)值類型**Python3 支持 **int、float、complex(復(fù)數(shù))**。
**整型**
Python 整數(shù)數(shù)據(jù)類型,簡(jiǎn)稱整型,在 Python 中用 `int`表示。
整數(shù)指的是沒(méi)有小數(shù)部分的數(shù)字,在 Python 中的整數(shù)包括正整數(shù)、0(數(shù)字零) 和負(fù)整數(shù)。
比如:
```
money = 100
age = 19
```
當(dāng)然也會(huì)分成:**二進(jìn)制、八進(jìn)制、十六進(jìn)制**
> 二進(jìn)制形式,由 0 和 1 兩個(gè)數(shù)字組成,書寫時(shí)以`0b`或`0B`開頭
>
> 八進(jìn)制形式,由 0~7 共八個(gè)數(shù)字組成,以`0o`或`0O`開頭
>
> 十六進(jìn)制形式,由 0~9 十個(gè)數(shù)字以及 A~F(或 a~f)六個(gè)字母組成,書寫時(shí)以`0x`或`0X`開頭
如:
```
print(0b101)
print(0o22)
print(0xc)
```
**浮點(diǎn)型**
浮點(diǎn)數(shù)數(shù)據(jù)類型,可以簡(jiǎn)稱為浮點(diǎn)類型。小數(shù)通常以浮點(diǎn)數(shù)的形式存儲(chǔ),在 Python 中用 `float` 表示。可以理解為浮點(diǎn)數(shù)是用來(lái)描述小數(shù)的。
比如:
```
height = 5.8
width = 6.2
```
**復(fù)數(shù)**
復(fù)數(shù)數(shù)據(jù)類型,簡(jiǎn)稱復(fù)數(shù)類型。在 Python 中用`complex`表示。復(fù)數(shù)類型是 Python 的內(nèi)置類型,直接書寫即可。復(fù)數(shù)由實(shí)部(real part)和虛部(imaginary part)構(gòu)成,分別以一個(gè)浮點(diǎn)數(shù)表示。在 Python 中,復(fù)數(shù)的虛部以小寫字母`j`或者大寫字母`J`作為后綴(虛數(shù)單位)具體格式為:a + bj
比如:
```
c1 = 12 + 0.2j
```
**字符串類型**
python 中的字符串字面量由單引號(hào)或雙引號(hào)括起。'hello' 等同于 "hello"。通過(guò)使用變量名稱后跟等號(hào)和字符串,把字符串賦值給變量:
比如:
```
name = ‘John’
```
多行字符串:您可以使用三個(gè)引號(hào)將多行字符串賦值給變量
比如:
```
message = ''' hello
world!'''
```
**布爾型**
布爾表示兩值之一:True 或 False。
如果有內(nèi)容,則幾乎所有值都將為 True。除 ()、[]、{}、""、數(shù)字 0 和值 None外,任何字符串均為 True。
比如:
```
print(True)
print(3>4)
```
當(dāng)然還有其他類型后面我們?cè)谥鹨唤榻B,更詳細(xì)的內(nèi)容請(qǐng)看:https://mp.weixin.qq.com/s/oWT8KGheWfX3awfDFfk0ag
**類型轉(zhuǎn)換**
類型轉(zhuǎn)換涉及到的函數(shù):
> int(x [,base]) 將x轉(zhuǎn)換為一個(gè)整數(shù)
> float(x) 將x轉(zhuǎn)換到一個(gè)浮點(diǎn)數(shù)
> str(x) 將對(duì)象 x 轉(zhuǎn)換為字符串
> eval(str) 用來(lái)計(jì)算在字符串中的有效Python表達(dá)式,并返回一個(gè)對(duì)象
> tuple(s) 將序列 s 轉(zhuǎn)換為一個(gè)元組
> list(s) 將序列 s 轉(zhuǎn)換為一個(gè)列表
> set(s) 轉(zhuǎn)換為可變集合
> dict(d) 創(chuàng)建一個(gè)字典。d 必須是一個(gè)序列 (key,value)元組。
> chr(x) 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)字符
> ord(x) 將一個(gè)字符轉(zhuǎn)換為它的整數(shù)值
> hex(x) 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)十六進(jìn)制字符串
> oct(x) 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)八進(jìn)制字符串
比如:
```
a = 0x18
print(int(a))
x = 7
print(eval('2*x'))
print(chr(48))
money = 5.89
print(int(money))
```
### 學(xué)習(xí)Python的方法
三句話:
```
多動(dòng)手:“紙上得來(lái)終覺(jué)淺,絕知此事要躬行。”
多搜索:隨著互聯(lián)網(wǎng)越來(lái)越普及,大量的學(xué)習(xí)者已經(jīng)把互聯(lián)網(wǎng)作為一個(gè)重要的學(xué)習(xí)平臺(tái)。
多總結(jié):一名成功的學(xué)習(xí)者應(yīng)該是一位善于總結(jié)的高手。
```