馮羅伊曼體系架構
1.?輸入設備
2.?輸出設備
3.?存儲器
4.?運算器
5.?控制器
轉義序列:\\, \t , \r , \n , \”, ?\’
Python:是動態語言,強類型語言
算數運算符
+ – */ % **
/是自然除,//是整除
位運算符
& | ?~ ?^ ?<< ?>>
原碼 5=> 0b101, 1=>0b1, -1=>-0b1, bin(-1)
反碼:正數的反碼與原碼相同;負數的反碼符號位不變其余按位取反
補碼:正數的補碼與原碼相同;負數的補碼符號位不變其余位取反后加一
比較運算符:== != > < >= <=
邏輯運算符
與或非 and ?or ?not
短路運算符
and如果第一個表達式為false,后面沒必要計算,邏輯表達式一定是false
or如果第一個表達式為true,后面沒必要計算,邏輯表達式一定是true
內存管理:GC就是回收站
If elif else語句
?例子
a=100
if a<0:
????print(‘negative’)
elif a==0:
????print(‘zero’)
else:
????print(‘positive’)
嵌套
scroe=80
if scroe<80:
????print(‘wrong’)
????else:
????????if scroe==0:
???????? print(‘egg’)
????????elif scroe<=100:
????????????print(‘right’)
????????else:
????????????print(‘too big’)
練習
輸入兩個數字,輸出最大數
a=input(‘input a number a:’)
b=input(‘input a number b:’)
if a>b:
????print(a)
elif b>a:
????print(b)
else:
????print(a)
給定一個不超過五位的正正整數,判斷其有幾位
a= 100
if a<10:
????print(‘1’)
elif a<100:
????print(‘2’)
elif a<1000:
????print(‘3’)
elif a<10000:
????print(‘4’)
else:
????print(‘try agin’)
例子2
val = input(‘>>>’)
val = int(val)
if val >= 1000: #fold
????????if val>= 10000:
????????????print(5)
????????else:
????????????print(4)
else:
????????if val >= 100:
????????????print(3)
????????elif val >= 10:
????????????print(2)
????????else:
????????????print(1)
While循環
例子
flag = 10
while flag:
????print(flag)
????Flag -= 1
for循環
例子
for i in range(10):
????print(i+1)
例子10以內的偶數
for i in range(10):
????if not i%2:
????????print(i)
課堂案例:
1.輸入一個數,判斷幾位,并把它從最高位打到最低位(5位以內)
val = input(‘>>>’)
val = int(val)
if val >= 1000:
????if val >= 10000:
????????num = 5
????else:
????????num = 4
else:
????if val >= 100:
????????num = 3
????elif var >= 10:
????????num = 2
????else:
????????num = 1
print(num)
c = val
for i in range(num):
????n = c//10
print(c – n*10)
c = n
2.打印一個正方形
n = 5
print(‘*’*n)
for i in range(n-2):
????print(‘*’+’ ‘*(n-2)+’*’)
print(‘*’*n)
3.?求100以內的奇數和
y = 0
for i in range(1,100,2):
????y = (i + y)
print(y)
4.?判斷學生成績
i=input(‘>>>’)
i=int(i)
if 100>=i>=90:
????print(‘A’)
elif 90>i>=80:
????print(‘B’)
elif 80>i>=70:
????print(‘C’)
elif 70>i>=60:
????print(‘D’)
else :
print(‘E’)
5.1-5的階層之和
a=1
for i in range(1,6,1):
????a = a*i
print(a)
6#判斷是否為質數
yum = input(‘>>>’)
yum = int(yum)
for i in range(2,yum):
????if not yum % i:
????????print(‘no’)
????????break
else:
???print(‘yes’)
7#打印99乘法表
for i in range(1,10):
????for o in range(1,i+1):
????????print(‘{}*{}={}\t’.format(i,o,i*o),end=”)
print()
8#打印菱形
a=input(‘請輸入奇數‘)
a=int(a)
for i in range(-a,a+1):
????if i < 0:
????????i=-i
print(” “*i+’*’*(a-2*i)+” “*i)
#打印100以內的斐波那契數列
a=0
b=1
while b<100:
????print(b)
a,b=b,a+b
#打印101項斐波那契數列
a=0
b=1
for i in range(1,101):
????a,b=b,a+b
print(b)
#打印100000以內的質數
for a in range(2,100000):
????for i in range(2,a):
????????if not a%i :
????????????break
????else:
????????print(a)
?
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/92949