Python——變量,運算,條件,循環


注釋

1.注釋是什么

注釋就是給代碼做的一些簡短的說明,讓我們更好的去理解代碼,注意程序執行的時候,不會去執行它

  • 第一種注釋 #開頭接一個空格就完事
  • 多行注釋,"""開頭"""結尾

代碼實例:


# 這是第一個單行注釋
print("hello python")

"""
print("hello python")
"""

變量

程序就是用來處理數據的,而變量就是用來存儲數據的

1.代碼實例,使用變量

# 定義 qq_number 的變量用來保存 qq 號碼
 qq_number = "1234567"
# 使用print可以查看它
print(qq_number)
  • 注意,如果你不想通過print查看變量的值,你可以在ipython中定義變量之后,直接輸入變量就行。

2.變量中都包含些什么呢?

  • 在內存中創建一個變量,會包括:
    1. 變量的名稱
    2. 變量保存的數據
    3. 變量存儲數據的類型
    4. 變量的地址(標示)
  • 變量的賦值值得是使用'='好給變量賦值,它總是從右邊賦值給左邊

2.什么時候需要使用注釋?

  1. 注釋不是越多越好,對於一目了然的代碼,不需要添加注釋
  2. 對於 復雜的操作,應該在操作開始前寫上若干行注釋
  3. 對於 不是一目了然的代碼,應在其行尾添加注釋(為了提高可讀性,注釋應該至少離開代碼 2 個空格)
  4. 絕不要描述代碼,假設閱讀代碼的人比你更懂 Python,他只是不知道你的代碼要做什么

在一些正規的開發團隊,通常會有 代碼審核 的慣例,就是一個團隊中彼此閱讀對方的代碼

關於代碼規范

任何語言的程序員,編寫出符合規范的代碼,是開始程序生涯的第一步,特是找工作的時候

3.變量的類型

  • Python 中定義變量是 不需要指定類型(在其他很多高級語言中都需要)
  • 數據類型可以分為 數字型非數字型
  • 數字型
    • 整型 (int)
    • 浮點型(float
    • 布爾型(bool
      • True 非 0 數 —— 非零即真
      • False 0
    • 復數型 (complex)
      • 主要用於科學計算,例如:平面場問題、波動問題、電感電容等問題
  • 非數字型
    • 字符串
    • 列表
    • 元組
    • 字典

提示:在 Python 2.x 中,整數 根據保存數值的長度還分為:

  • int(整數)
  • long(長整數)
  • 使用 type 函數可以查看一個變量的類型
在以上的介紹中,你會發現,它的語法,好像跟JavaScript有點像
first_name = "三"
print(type(first_name))#顯示的是以一個str 字符串類型的變量

4.字符串 與不同類型變量之間的計算

  1. 這里面可能包含一些問題,你需要注意;
    • 在 Python 中,字符串之間可以使用 + 拼接生成新的字符串
    • 如果是字符串加一個* 一個數字號意思就是把字符串重復多少次
    • 如果是字符串和字符串*就會出一個錯誤,類型錯誤

print("Hello" + "bmlaoli")
print("Hello" * 100)
print("Hello" * "bmlaoli")

5.變量的輸入以及函數的簡單說明

示例代碼:

name = input("輸入你名字")
print("你輸入的內容是" + name)
print(type(name))# 注意哈,從這里你可以看出來,我們的input是一個str類型
函數 說明
print(x) 將 x 輸出到控制台
type(x) 查看 x 的變量類型

6.類型轉換

函數 說明
int(x) 將 x 轉換為一個整數
float(x) 將 x 轉換到一個浮點數

代碼實例

name = input("請輸入你的年齡")
print(type(name));
print(type(float(name))); # 可以看到這里你會得到一個int類型

格式化輸出

什么是格式化輸出,簡單的理解就是把輸出的內容安裝某種格式進行輸出

1.基礎

這里有一個表格,可以幫助你更好的理解

格式化字符 含義
%s 字符串
%d 有符號十進制整數,%06d 表示輸出的整數顯示位數,不足的地方使用 0 補全
%f 浮點數,%.2f 表示小數點后只顯示兩位
%% 輸出 %

2.練習

需求

  1. 定義字符串變量 name,輸出 我的名字叫 小明,請多多關照!
  2. 定義整數變量 student_no,輸出 我的學號是 000001
  3. 定義小數 priceweightmoney,輸出 蘋果單價 9.00 元/斤,購買了 5.00 斤,需要支付 45.00 元
  4. 定義一個小數 scale,輸出 數據比例是 10.00%
name = "bmlaoli"
student_no = 1
price = 20
weight = 30
money = price * weight
scale = 0.25
print("我的名字叫 %s,請多多關照!" % name)
print("我的學號是 %06d" % student_no)
print("蘋果單價 %.02f 元/斤,購買 %.02f 斤,需要支付 %.02f 元" % (price, weight, money))
print("數據比例是 %.02f%%" % (scale * 100))

算數運算,

01. 算數運算符

  • 算數運算符是 運算符的一種
  • 是完成基本的算術運算使用的符號,用來處理四則運算
運算符 描述 實例
+ 10 + 20 = 30
- 10 - 20 = -10
* 10 * 20 = 200
/ 10 / 20 = 0.5
// 取整除 返回除法的整數部分(商) 9 // 2 輸出結果 4
% 取余數 返回除法的余數 9 % 2 = 1
** 又稱次方、乘方,2 ** 3 = 8
  • 在 Python 中 * 運算符還可以用於字符串,計算結果就是字符串重復指定次數的結果
In [1]: "-" * 50
Out[1]: '----------------------------------------' 

02. 算數運算符的優先級

  • 和數學中的運算符的優先級一致,在 Python 中進行數學計算時,同樣也是:

    • 先乘除后加減
    • 同級運算符是 從左至右 計算
    • 可以使用 () 調整計算的優先級
  • 以下表格的算數優先級由高到最低順序排列

運算符 描述
** 冪 (最高優先級)
* / % // 乘、除、取余數、取整除
+ - 加法、減法
  • 例如:
    • 2 + 3 * 5 = 17
    • (2 + 3) * 5 = 25
    • 2 * 3 + 5 = 11
    • 2 * (3 + 5) = 16

程序執行原理

01. 計算機中的三大件

計算機中包含有較多的硬件,但是一個程序要運行,有 三個 核心的硬件,分別是:

  1. CPU
    • 中央處理器,是一塊超大規模的集成電路
    • 負責 處理數據計算
  2. 內存
    • 臨時 存儲數據(斷電之后,數據會消失)
    • 速度快
    • 空間小(單位價格高)
  3. 硬盤
    • 永久 存儲數據
    • 速度慢
    • 空間大(單位價格低)

02.程序執行原理

  1. 程序 運行之前,程序是 保存在硬盤 中的
  2. 當要運行一個程序時
    • 操作系統會首先讓 CPU 把程序復制到 內存
    • CPU 執行 內存 中的 程序代碼

程序要執行,首先要被加載到內存

  1. python程序如何執行的呢?
1. 操作系統會首先讓 **CPU** 把 **Python 解釋器** 的程序復制到 **內存** 中
2. **Python 解釋器** 根據語法規則,**從上向下** 讓 **CPU** 翻譯 **Python 程序中的代碼**
3. **CPU** 負責執行翻譯完成的代碼

變量的命名

1.表示符號和關鍵字

標示符就是程序員定義的 變量名函數名

名字 需要有 見名知義 的效果。

  1. 標識符好的構成
    • 標示符可以由 字母下划線數字 組成
    • 不能以數字開頭
    • 不能與關鍵字重名
  2. 關鍵字
  • 關鍵字 就是在 Python 內部已經使用的標識符
  • 關鍵字 具有特殊的功能和含義
  • 開發者 不允許定義和關鍵字相同的名字的標示符
import keyword
print(keyword.kwlist)
# import` **關鍵字** 可以導入一個 **“工具包”**

2. 命名的規則,

需要避免python中的關鍵字。而且需要讓別人見名知意

  1. 在定義變量時,為了保證代碼格式,= 的左右應該各保留一個空格

  2. Python 中,如果 變量名 需要由 二個多個單詞 組成時,可以按照以下方式命名

    1. 每個單詞都使用小寫字母
    2. 單詞與單詞之間使用 _下划線 連接
    • 例如:first_namelast_nameqq_numberqq_password
  3. 駝峰命名法

  • 變量名 是由二個或多個單詞組成時,還可以利用駝峰命名法來命名
  • 小駝峰式命名法
    • 第一個單詞以小寫字母開始,后續單詞的首字母大寫
    • 例如:firstNamelastName
  • 大駝峰式命名法
    • 每一個單詞的首字母都采用大寫字母
    • 例如:FirstNameLastNameCamelCase
  1. 更多的命名規范和技巧。請你去查看官方給出的規范。哪里有詳細的說明

條件判斷語句,if

這里我們全部通過示例代碼,來學習,

1. if else判斷

# 1.if else判斷。
if 今天發工資:

    先還信用卡的錢

    if 有剩余:

        又可以happy了,O(∩_∩)O哈哈~

    else:

        噢,no。。。還的等30天
else:

    盼着發工資

# 注意這里的縮進!`if` 語句以及縮進部分是一個 **完整的代碼塊**

# 2. 輸入用戶年齡
age = int(input("今年多大了?"))

#  判斷是否滿 18 歲
# if 語句以及縮進部分的代碼是一個完整的語法塊
if age >= 18:
    print("可以進網吧嗨皮……")
else:
    print("你還沒長大,應該回家寫作業!")

# 無論條件是否滿足都會執行
print("這句代碼什么時候執行?")

2. 邏輯判斷,

邏輯判斷的輸入是兩個Boolean值,得出的也是Boolean值,這個我們在js中也曾學習過。原理都是一樣的,只是在編程的語法上有些許的差異。

  • Python 中的 邏輯運算符 包括:與 and或 or非 not 三種,在js中我們使用的&& || !不知道你是否還記得。

2.1 and

條件1 and 條件2
  • 並且
  • 兩個條件同時滿足,返回 True
  • 只要有一個不滿足,就返回 False
條件 1 條件 2 結果
成立 成立 成立
成立 不成立 不成立
不成立 成立 不成立
不成立 不成立 不成立

2.2 or

條件1 or 條件2
  • 或者
  • 兩個條件只要有一個滿足,返回 True
  • 兩個條件都不滿足,返回 False
條件 1 條件 2 結果
成立 成立 成立
成立 不成立 成立
不成立 成立 成立
不成立 不成立 不成立

2.3 not

not 條件
  • 不是
條件 結果
成立 不成立
不成立 成立

代碼實例:

# 練習1: 定義一個整數變量 age,編寫代碼判斷年齡是否正確
age = 100

# 要求人的年齡在 0-120 之間
if age >= 0 and age <= 120:
    print("年齡正確")
else:
    print("年齡不正確")

3. elif?

elif 是否則如果的簡寫,

  • 在開發中,使用 if 可以 判斷條件
  • 使用 else 可以處理 條件不成立 的情況
  • 但是,如果希望 再增加一些條件條件不同,需要執行的代碼也不同 時,就可以使用 elif
  • 語法格式如下:
if 條件1:
    條件1滿足執行的代碼
    ……
elif 條件2:
    條件2滿足時,執行的代碼
    ……
elif 條件3:
    條件3滿足時,執行的代碼
    ……
else:
    以上條件都不滿足時,執行的代碼
    ……
  1. elifelse 都必須和 if 聯合使用,而不能單獨使用
  2. 可以將 ifelifelse 以及各自縮進的代碼,看成一個 完整的代碼塊

4.同時你需要注意的是if是可以嵌套的!

循環while

其實在python中的while循環和js中以及其他語言的while原理是差不多的

1.基本的語法

初始條件設置 —— 通常是重復執行的 計數器

while 條件(判斷 計數器 是否達到 目標次數):
    條件滿足時,做的事情1
    條件滿足時,做的事情2
    條件滿足時,做的事情3
    ...(省略)...
    
    處理條件(計數器 + 1)

案例演示:計算1+100的值

# 計算 0 ~ 100 之間所有數字的累計求和結果
# 0. 定義最終結果的變量
result = 0

# 1. 定義一個整數的變量記錄循環的次數
i = 0

# 2. 開始循環
while i <= 100:
    print(i)

    # 每一次循環,都讓 result 這個變量和 i 這個計數器相加
    result += i

    # 處理計數器
    i += 1

print("0~100之間的數字求和結果 = %d" % result)

2.賦值運算

  • 在 Python 中,使用 = 可以給變量賦值
  • 在算術運算時,為了簡化代碼的編寫,Python 還提供了一系列的 與 算術運算符 對應的 賦值運算符
  • 注意:賦值運算符中間不能使用空格
運算符 描述 實例
= 簡單的賦值運算符 c = a + b 將 a + b 的運算結果賦值為 c
+= 加法賦值運算符 c += a 等效於 c = c + a
-= 減法賦值運算符 c -= a 等效於 c = c - a
*= 乘法賦值運算符 c *= a 等效於 c = c * a
/= 除法賦值運算符 c /= a 等效於 c = c / a
//= 取整除賦值運算符 c //= a 等效於 c = c // a
%= (余數)賦值運算符 c %= a 等效於 c = c % a
**= 冪賦值運算符 c **= a 等效於 c = c ** a

3. break 和 continue

breakcontinue 是專門在循環中使用的關鍵字

  • break 某一條件滿足時,退出循環,不再執行后續重復的代碼
  • continue 某一條件滿足時,不執行后續重復的代碼

4.while 同樣是可以嵌套的

while 條件 1:
    條件滿足時,做的事情1
    條件滿足時,做的事情2
    條件滿足時,做的事情3
    ...(省略)...
    
    while 條件 2:
        條件滿足時,做的事情1
        條件滿足時,做的事情2
        條件滿足時,做的事情3
        ...(省略)...
    
        處理條件 2
    
    處理條件 1

字符串

字符串中的轉義字符

  • \t 在控制台輸出一個 制表符,協助在輸出文本時 垂直方向 保持對齊
  • \n 在控制台輸出一個 換行符

制表符 的功能是在不使用表格的情況下在 垂直方向 按列對齊文本

轉義字符 描述
\\ 反斜杠符號
\' 單引號
\" 雙引號
\n 換行
\t 橫向制表符
\r 回車

更多的運算符

1. 比較(關系)運算符

運算符 描述
== 檢查兩個操作數的值是否 相等,如果是,則條件成立,返回 True
!= 檢查兩個操作數的值是否 不相等,如果是,則條件成立,返回 True
> 檢查左操作數的值是否 大於 右操作數的值,如果是,則條件成立,返回 True
< 檢查左操作數的值是否 小於 右操作數的值,如果是,則條件成立,返回 True
>= 檢查左操作數的值是否 大於或等於 右操作數的值,如果是,則條件成立,返回 True
<= 檢查左操作數的值是否 小於或等於 右操作數的值,如果是,則條件成立,返回 True

Python 2.x 中判斷 不等於 還可以使用 <> 運算符

!= 在 Python 2.x 中同樣可以用來判斷 不等於

2. 邏輯運算符

運算符 邏輯表達式 描述
and x and y 只有 x 和 y 的值都為 True,才會返回 True
否則只要 x 或者 y 有一個值為 False,就返回 False
or x or y 只要 x 或者 y 有一個值為 True,就返回 True
只有 x 和 y 的值都為 False,才會返回 False
not not x 如果 x 為 True,返回 False
如果 x 為 False,返回 True

3. 賦值運算符

  • 在 Python 中,使用 = 可以給變量賦值
  • 在算術運算時,為了簡化代碼的編寫,Python 還提供了一系列的 與 算術運算符 對應的 賦值運算符
  • 注意:賦值運算符中間不能使用空格
運算符 描述 實例
= 簡單的賦值運算符 c = a + b 將 a + b 的運算結果賦值為 c
+= 加法賦值運算符 c += a 等效於 c = c + a
-= 減法賦值運算符 c -= a 等效於 c = c - a
*= 乘法賦值運算符 c *= a 等效於 c = c * a
/= 除法賦值運算符 c /= a 等效於 c = c / a
//= 取整除賦值運算符 c //= a 等效於 c = c // a
%= (余數)賦值運算符 c %= a 等效於 c = c % a
**= 冪賦值運算符 c **= a 等效於 c = c ** a

4. 運算符的優先級

  • 以下表格的算數優先級由高到最低順序排列
運算符 描述
** 冪 (最高優先級)
* / % // 乘、除、取余數、取整除
+ - 加法、減法
<= < > >= 比較運算符
== != 等於運算符
= %= /= //= -= += *= **= 賦值運算符
not or and 邏輯運算符


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM