python JOB(作業)



1.執行python腳本兩種方式

1.1 在終端輸入:python
1.2 在終端輸入:python 1.py


2.簡述位和字節的關系

2.1 1個字節8個位
2.2  計算機處理都是以"字節"來為單位,而"存儲"是用"位"為單位


3.簡述ASCII,Unicode,Utf-8,Gbk的關系

3.1 它們的出現的先后順序:ASCII,Unicode,UTF-8
3.2 unicode\utf-8等就不同了,這些編碼里面漢字長度不是一定的,有的長、有的短,2~4字節,1個漢字是用3個字節來表示
3.3 ASCII\GBK\GB2312編碼,一個漢字占兩個字節


4.分別在Python2.7和Python3中用漢字"李傑"來表示字節和字符


python 3 默認是用UTF-8編碼
name = "李傑"
v = len(name)
print(v) 返回的結果是:2 這里的2表示字符的個數


python 2.7 用UTF-8編碼

name = "李傑"
v = len(name)
print(v) 返回結果:6 這里的6表示字節個數,1個漢字是3個字節


如果用GBK和ASCII來表示"李傑"那就是4個字節,因為在這兩個編碼中1個漢字是2個字節 


5.單行注釋和多行注釋分別用什么?

5.1 單行注釋用:
5.2 多行注釋用: """ """

 

6.聲明變量注意事項

6.1 數字:不能以數字開頭
6.2 字母: 不能用python內置關鍵字來作變量
6.3 下划線:


7 如果變量 n = 5 請使用int 方法得到該變量最少可以用多少個二進制位表示?

n = 5

v = n.bit_length()

print(v) 返回結果是:3 最少可以用3個二進制位表示:101

 

8 布爾值分別有什么?

8.1 False
8.2 True


9 閱讀代碼 並輸出結果

a = "alex"

b = a.capitalize()
print(a) 返回的結果是: alex
print(b) 返回的結果是: Alex

 

 

10 寫代碼如下變量請按照要求實現每個功能

name = " alex"

 

10.1 移除name變量對應值兩邊的空格,並輸出移除后的內容

v1 = name.strip()
print(v1) 返回的結果:alex

 

10.2 判斷name變量對應的值是否以"al"開頭,並輸出內容

v2 = name.startswith("al")
print(v2) 返回的結果:False ,因為前面有空格


10.3判斷name變量對應的值是否以"x"結尾並輸出內容

v3 = name.endswith("x")
print(v3) 返回的結果:True


10.4 將name變量對應值中的"l"替換成"p",並輸出結果

v4 = name.replace("l","p")
print(v4) 返回的結果:apex

 

10.5 將name變量對應的值,根據"l"分割,並輸出結果

v5 = name.split("l")
print(v5) 返回的結果:[' a', 'ex']


10.6 請問上一題10.5中分割之后得到的值是什么類型(可選)?

列表類型


10.7 將name變量對應的值變成大寫,並輸出結果

v7 = name.upper()
print(v7) 返回的結果:ALEX

 

10.8 將name變量對應的值變小寫,並輸出結果

v8 = name.lower()
print(v8) 返回的結果: alex


10.9 請輸出name變量對應值的第2個字符

 

 

v9 = name[1]
print(v9) 返回的結果: a


10.10 請輸出name變量對應值的前3個字符

v10 = name[:3]
print(v10) 返回的結果:空格al

 

 

11.字符串是否是可迭代對象,如果是請用for循環每個元素

name = "diskpart"
for i in name:
print(i)
""" 輸出結果如下
d
i
s
k
p
a
r
t

"""


"""
我們所說的str(字符串),int(數字)、列表、元組等等,這都是類型,然后我們在類型中創建對象,比喻說下面的例子


name = "alex" :我們可以這樣說:在字符串類型下面創建了一個name的對象

"""


12.請用代碼實現


12.1 利用下划線將列表的每個元素拼接成字符串,li = "alexericrain"
12.2 利用下划線將列表的每個元素拼接成字符串, li =["alex","eric","rain"]

li = "alexericrain"
v1 = "_".join(li)
print(v1) #返回結果是:a_l_e_x_e_r_i_c_r_a_i_n



li = ["alex","eric","rain"]
v2 = "_".join(li)
print(v2) #返回結果是:alex_eric_rain



13 .python2中的range和python3中的range區別?


13.1 python2中的range是立即創建
13.2 python3中的range是for循環時候才一個一個創建
for i in range(100,0,-1): 從大到小循環每一次減1


14 實現一個整數的加法計算器

如:content = input("請輸入內容:") 如:5+9 或 5+9 或 5+9

content = input("請輸入內容:")
print(content) # 返回結果是:字符串"5+10"
v1, v2 = content.split("+") # 以加號來分割字符串,且不保留指定字符,並把分割后的結果賦值給v1和v2
print(type(v1), v1, type(v2), v2) # 返回的結果:字符串10和9
v1 = int(v1) # 把v1轉換成int
v2 = int(v2) # 把v2轉換成int
v3 = v1 + v2
print(v3)



15.計算用戶輸入的內容中有幾個十進制小數?幾個字母?


count1 = 0
count2 = 0
content = input("請輸入內容:") # 如sdfsadfsdaf080980239jjoojo2342342

for item in content:
if item.isdigit():
count1 = count1 + 1
elif item.isalpha():
count2 = count2 + 1
print("一共有數字%d個"%count1)
print("一共有字母%d個"%count2)


16.簡述int和9等數字以及 str和"xxoo"等字符串的關系?

在python中int、str、list、tuple、dict我們都統稱為類,而在相應的類下面一個變量我們稱為對象



17.制作趣味模版程序


需求:等待用戶輸入名字、地點、愛好、根據輸入的名字和地點以及愛好任意輸出
name = input("請輸入name>>>:")
location= input("請輸入location>>>:")
hobby = input("請輸入hobby>>>:")

第1種寫法
print("name:%s"%name)
print("location%s"%location)
print("hobby%s"%hobby)

第2種寫法
print("name:{0},location:{1},hobby:{2}".format(name,location,hobby))


第3種另類寫法
information = "name:{0},location:{1},hobby:{2}"
v = information.format("yuxianming","wuhan","pyton")
print(v)


18.制作隨機驗證碼:此處略過

 

 

19.開發敏感詞過濾程序,提示用戶輸入內容,如果用戶輸入的內容中包含了特殊字符,如"小李子"和"python",則被內容替換為*****


input_test = input("請輸入>>>>:")
input_test = input_test.replace("小李子","****")
input_test = input_test.replace("python","****")
print(input_test)



20.制作表格

"""
需求:循環提示用戶輸入,用戶名、密碼、郵箱(要求用戶的輸入的長度不超過20個字符,如果超過只有20個字符有效,如果用戶
輸入"q"或者"Q"表示不在繼續輸入,將用戶輸入的內容以表格顯示 )
"""

s = ""
while True:
name = input("name>>>:")
if name=="q" or name =="Q":
break
password = input("password>>>:")
email= input("email>>>:")
v = "{0}\t{1}\t{2}\n"
v1 =v.format(name,password,email)
s = s+v1
print(s.expandtabs(20))

 

 

 

 

 

 

""""""""""""""""""""""""購物車程序編寫""""""""""""""""""""""""""""""""""""""""""

 

# 創建充值列表
print("只能充值10,17,12,15,19的幣種")
input_rmb = [10, 12, 15, 17, 19]
input_log = True
rmb_count = 0
while input_log:
    input_list = input("請輸入(按q鍵退出)>>>>:")
    if input_list == "q":
        print("退出程序,共充值%s元" % rmb_count)
        break
    elif input_list.isdigit():
        input_list = int(input_list)
        if input_list not in input_rmb:
            print("只能輸入:", input_rmb)
            continue

    elif input_list.isdigit() == False:
        print("輸入不合法,請重新輸入......")
        continue
    rmb_count = rmb_count + input_list

#創建商品列表
shopping_list={

    "kele":12,
    "niunai":15,
    "molihua":3,
    "tieguanying":24

}
codeing=0
name ="商品信息"
print(name.center(20,"*"))
for k,v in shopping_list.items():
    codeing=codeing+1
    print("商品編碼:%s,商品名稱:%s,商品價格:%s"%(codeing,k,v))
name1="end"
print(name1.center(25,"*"))

#客戶選選擇購買商品

kong_list = []
while True:
    code_input=input("請輸入商品編碼(按q鍵退出)>>>>:")
    if code_input == "q":
        print("退出系統.....")
        break

    elif code_input.isdigit()==False:
        print("輸入非法.....請重新輸入")
        continue
    else:
        if code_input.isdigit():
            code_input=int(code_input)
            if code_input>0 and code_input<len(shopping_list):
                x=0
                for k1,v1 in shopping_list.items():
                    x=x+1
                    if x==code_input:
                        if rmb_count>0:
                            rmb_count=rmb_count-v1
                            kong_list.append(k1)
                        else:
                            print("余額不足您還剩余%s元歡迎下次光臨....."%rmb_count)
            else:
                print("只能輸入0到%s之間的數字...."%len(shopping_list))
                continue
#系統找零

if rmb_count>0:
    print("您一共購買%s個商品,還剩余%s元"%(len(kong_list),rmb_count))
else:
    print("余額不足請重新充值.....")

 




 


免責聲明!

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



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