數**算符,比較運算子,邏輯運算子, 賦值運算子, 位運算子
一丶數**算符:
常見的數**算符:+, -, *, /, //整除, %取餘/取模, **冪運算。
c語言 除根據定義的資料型別不同,所得的結果不一樣。5/2=2,5.0/2=2.5
python在不定義資料型別情況下都預設為浮點型。
注:"//" 整除,向小取整 比如說1.9取1.0。 -1.9取-2.0,類似於去掉低位數。"**" 冥運算,
練習:獲取任意大於的100的數的百位數。
b = int(input("請輸入資料"))
c = int(input("選擇取第幾位數"))
d = 1
d = b // (10 ** (c - 1)) % 10
print(d)
二,比較運算子:
<, >, >=, <=, ++, != 所有的比較運算子的結果都是布林值。
python中的比較運算子都支援連寫的方式表示取值範圍。
28 < a < 60
三,邏輯運算子:
and(與), or(或), not(非)
與:相當於"並且",全true為真,有乙個false就是假。
或:相當於"或者",只要有乙個為真(true)都為真(true)。
非:單目運算子,對乙個資料進行判斷。not一般用於正向寫非常麻煩,但是方向判斷比較容易的條件判斷。
例如:寫出不能同時被3和7整除的條件。
print(not num % 21 == 0)
短路操作:and的短路操作,例如:條件一 and 條件二 ,如果條件1是false,那麼對於條件2的判斷**不會執行。
or的短路操作,如果條件一是true,那麼條件二對應的**不會被執行。
注意:實際開發的時候,邏輯運算子一般都是bool值。面試的時候喜歡考不是bool值的問題,
如果表示式的值不是布林,就轉化為布林值在判斷。
python所有型別的資料都可以轉化為布林值,所有為零為空的數值都會轉化為false。
表示式1 and 表示式2 :表示式1的值為true,則返回的結果為表示式2的值。
表示式1 or 表示式2 :表示式1的值為false,這返回的結果為表示式2的值。
寫出乙個數能不能同時被三或者七整除。
a = int(input("輸入乙個數"))
print("能否被三和七整除", a % 3 == 0 and a % 7 == 0)
if a % 3 == 0 and a % 7 == 0:
print("能被三和七同時整除")
else:
print("不能被整除")
寫出判斷閏年的條件語句a = int(input("輸入年份"))
print("判斷該年份是否為閏年", a % 4 == 0 or a % 100 != 0)
布林值的轉換:print(bool(0), bool(""), bool("false")) # false false false
print(bool("100")) # true true
三.賦值運算子。
運算子的優先順序:數**算符》比較運算子》邏輯運算子》賦值運算子(最低)。
數**算符:**>*,/,//>+,-
邏輯運算子:and > or
括號的優先順序是最高的
四.位運算子:
&(按位與),|(按位或),^(按位異或),~(按位取反),>>(右移),<<(左移)。
位運算子的運算效率比一般的運算子都要高出幾十倍到幾百倍。
應用1:判斷整數的奇偶性,數字對一進行按位與運算,運算結果是1就是奇數,結果是0就是偶數。
print(28&1, 10&1) # 0 0
print(11&1,9&1) # 1 1
應用2:
數字 << n - 快速乘 2**n
數字 >> n - 快速整除 2**n
數字 << 1 - 快速乘2 數字*2
數字 >> 1 - 快速整除2 數字//2
1.流程控制
1).順序結構:重上往下依次執行每一條語句。
2).分支結構:根據條件選擇性的執行**。
3).迴圈結構:能夠讓**重複執行。
2.分支結構
1).if 的單分支結構。
if 條件語句:
**段
說明:
(1).if -關鍵字,固定寫法。
(2).條件語句 -任何有結果的表達方式,任何型別的資料,除賦值語句以外的運算子,表示式,函式呼叫表示式
(3).冒號 -固定寫法。(python中冒號一般都需要換行後產生縮進來表示**塊)
(4).**段 -和if保持乙個縮排(tab=4個空格)的一條語句或者多條語句。在滿足條件的時候才會執行**。
執行過程:先判斷條件語句是否為true(如果不是布林值就換換成布林值判斷)。如果是ture就執行**端,否則**段不執行。
練習:輸入乙個整數,如果是整數,就列印」這個數能被2整除「。
a = int(input("請輸入乙個整數"))
if a % 2 == 0:
print("這個數能被2整除")
b = int(input("請輸入乙個整數"))
if b & 1 == 0:# (寫成b & 1, 在結果是奇數的的時候可以pass)
print("這個數能被2整除")
b = int(input("請輸入乙個整數"))
if b & 1: # (寫成b & 1, 在結果是奇數的的時候可以pass)
print("這個數不能被2整除")
2)if雙分支結構if 條件語句:
**塊1
else:
**塊2
執行過程:先判斷條件語句是否為true,如果是就執行**塊1,否則執行**塊2。
練習1:如果輸入的數字是偶數就列印"偶數",否則列印"奇數"
練習2:根據輸入的年齡值列印 『成年』 或者 『未成年』
練習3:輸入年份,根據年份值列印 『閏年』 或者 『非閏年』
a = int(input("請輸入乙個整數"))
if a & 1 == 0:
print('偶數')
else:
print("奇數")
b = int(input("請輸入您的年齡"))
if b > 18:
print('成年')
else:
print("未成年")
b = int(input("請輸入年份"))
if b % 4 == 0:
print('閏年')
else:
print("非閏年")
if多分支結構 — 更具不同對條件執行不用的操作
語法:
if 條件語句1:
**塊1
elif 條件語句2:
**塊2
elif 條件語句3:
**塊3
......
else:
**塊n
練習:按照績點要求,發放相應的獎學金,大於4績點拿一級獎學金,大於3.5績點小於4績點2級獎學金,大於3績點小於3.5績點拿**獎學金,大於2.5績點小於3績點拿四級獎學金,小於2.5績點無獎學金。student_grade = float(input("請輸入績點"))
if student_grade > 4:
print("一級獎學金")
elif 3.5 <= student_grade:
print("二級獎學金")
elif 3 <= student_grade:
print("**獎學金")
elif 2.5 <= student_grade:
print("四級獎學金")
else:
print("沒有獎學金")
第二課 加法運算
在程式設計當中,文字框及按鈕是用得比較多的乙個控制項,我們先來學學如何使用這兩個控制項。1 新建乙個窗體 2 在窗體上放置三個文字框控制項,分別命名為 txtnum1 txtnum2 txtnum3,我們在命名時,盡量規範一點,可參考這裡 3 在窗體上放置乙個按鈕,命名為cmdcount 開始程式設...
Python基礎第二課
練習題 1 編寫乙個python程式來查詢那些既可以被7整除又可以被5整除的數字,介於1500和2700之間。your code here i for i in range 1500 2700,1 if i 7 0and i 5 0 2 龜兔賽跑遊戲 題目描述 話說這個世界上有各種各樣的兔子和烏龜,...
python第二課(函式)
1 函式的定義 在python中可以使用def關鍵字來定義函式,和變數一樣每個函式也有乙個響亮的名字,而且命名規則跟變數的命名規則是一致的。在函式名後面的圓括號中可以放置傳遞給函式的引數,這一點和數學上的函式非常相似,程式中函式的引數就相當於是數學上說的函式的自變數,而函式執行完成後我們可以通過re...