Python全棧工程師(while、佔位符)

ParisGabrielpython

 
 
Python 入門基礎
 
 
 
 

Unicode
ASCII 用8個位表示文字 ,最高位必定是零,低七位表示數值
Unicode是由16個位組成的(65535) 最高位也是0x0000~0xfff
help(str) 函數

查看全部str函數編碼

字符串的格式化表達式:
生成必定格式的字符串
格式字符串中以 % 開頭的爲佔位符,
佔位符的位置將參數值替換
語法:
格式字符串 % 參數值
格式字符串 % (參數值1,參數值2,...)
佔位符和其的類型碼:
%s 字符串 使用shr(obj)轉爲字符串
%r 字符串 使用repr(obj)轉爲字符串
%c 整數轉爲字符串,使用chr(i)函數
%d 10進制整數
%o 8進制整數
%x 16進制整數(字符a-f)
%X 16進制整數(字符A-F)
%e 浮點數(e)如 2.9e+10
%E 浮點數(E)如2.9E+10
%f %F 浮點數10進制形式
%g %G 進制進形式浮點數或指浮點數自動轉換
%% 等同於一個 % 字符spa

佔位符與類型碼之間的格式語法:
%[- + 0 寬度.精度]類型碼
- 左對齊
+ 右對齊
0 左右空白位置補03d

寬度:整個數據輸出的寬度
精度:保留小數點後多少位,默認6位
"%10d" %123 #" 123"
"%+10d"%123 #" +123"
"%-10d"%123 #"123 "
"%10s"%"abc" #" abc"
"%010d"%123 #"0000000123"
"%f"%3.14159625358 # "3.141593"
"%7.2f"%3.14159265358#" 3.14"code

循環語句:
while:
根據必定的條件,重複執行一些相同或類似的內容
先判斷真值表達式是否成立在執行
執行完內容繼續返回真值表達式判斷是否成立 直到
真值表達式爲false時 判斷是否有else有則執行else的內容沒有則循環結束
注意事項:
要控制真值表達式的值來防止死循環
一般用真值表達式內的循環變量來控制真值表達式的值
一般在循環語句塊內改變循環變量來控制循環次數和變量走向
while的嵌套:
while語句和其餘語句同樣,能夠嵌套放入任何複合語句當中
break:
用於循環語句(while、for)中用來終止當前循環(跳出循環)
當break語句執行後此循環之後的語句將再也不執行
break終止循環時 else語句塊將再也不執行
break語句一般和if組合使用
break只能終止當前做用域 如循環嵌套時,不會跳出外循環
break只能在循環語句(while、for)內使用
死循環:
死循環是指循環條件一直成立的循環
死循環一般用break語句來終止循環
死循環的else語句塊永遠不會執行blog

練習:
1.輸入一行字符串,將字符串中Unicode編碼值最大的一個字符打印出來(不容許用max函數)
提示:while內能夠嵌套if作用域

答案:字符串

print("Answer to question 1:", "\n")
s = input("plaese input at will string:") i = 0 top = s[0] while i < len(s): if ord(top) < ord(s[i]): top = s[i] i += 1 print("you input string in top1:", top, ord(top))

2.打印 從零開始的浮點數,每一個數增長0.5,
打印出10之內的這樣的數:
0.0
0.5
1.0
0.5
2.0
...
10get

答案:

print("Answer to question 2:", "\n")
i = 0
while i < 10:
    i += 0.5
    print(i)

3.打印輸出1~20在同一行內  結束後換行

 答案:

s = 0
while s < 20:
    s += 1
    print(s, end = " ")
else:
    print()

 

4.打印輸出1~20在同一行內  打印10行

i = 0
while i < 10:
    s = 0
    while s < 20:
        s += 1
        print(s, end = " ")
    else:
        print()
    i += 1

5.當輸入一些數字,輸入負數時結束輸入
當完成輸入完後,打印輸入的數時多少

答案:

s = 0
while True:
    a = int(input("plaese input at will integer:"))
    s += a
    if a < 0:
        break
print(s)

 

6.Sn = 1/2+1/4+1/8....+1/(2**n)
求當n等同於100時Sn的值是多少

答案:

Sn = 1
i = 0
while i < 100:
    i += 1
    Sn += 1 / 2 ** i
print(Sn)

7.輸入一個整數打印出矩形 若輸入1則輸出1個#

例如:

輸入1:#

輸入2:
##
##

輸入6:
######
#        #
#        #
#        #
#        #
#        #
######

答案:

s = int(input("plaese input at will integer:"))
if s > 1:
    print("#" * s)
    i = 2
    while i < s:
        i += 1
        print("#" + " " * (s - 2) + "#")
    print("#" * s)
else:
    print("#")

 

8.用while語句實現打印三角形,輸入一個整數表示三角形
的寬度和高度,打印出相應的三角形
如:
1)
*
**
***
****
2)
****
 ***
  **
   *
3)
   *
  **
 ***
****
4)
****
***
**
*

答案:

a = int(input("plaese input at will ingeger:"))
i = 0
b = a
c = a
d = a
while i < a:
    i += 1
    print("*" * i)
print()
i = 0
while i < d:
    print((a - d) * " " + "*" * d)
    d -= 1
print()
i = 0
while i < c:
    i += 1
    print((c - i) * " " + "*" * i)
print()
i = 0
while i < b:
    print("*" * b)
    b -= 1

  

a = int(input("plaese input at will ingeger:"))
i = 0
d = a
while i < a:
    while i < d:
        print((a - d) * " " + "*" * d)
        d -= 1
    print("*" * (i + 1))
    i += 1
print()

 

相關文章
相關標籤/搜索