現實應用實例
阿新 • • 發佈:2017-05-14
ont 技能 float 驗證碼 輸入 n) 分享 rem 金額
1、購物車
c=[] sum=0 a=[ {"name":"電腦","price":1000}, {"name":"鼠標","price":2000}, {"name":"優盤","price":3000}, {"name":"硬盤","price":4000}, {"name":"音響","price":5000} ] for i in a: print(i["name"],i["price"]) b=int(input("請輸入總資產:")) while True: d=input("請輸入需要購買的商品名稱(輸入y退出):") if d=="y": break for j in a: if d==j["name"]: c.append([j["name"],j["price"]]) for k in c: sum=sum+k[1] print(c) print("總價格:",sum) if sum>b: print("余額不足,請充值") x = input("y:充值,n:退出") if x=="n": print("歡迎下次光臨") if x=="y": while True: p=int(input("請輸入充值金額:")) b=b+p print("恭喜充值成功 余額:",b,"結算金額:",b-sum) s=input("是否結算? 結算:1 繼續充值:2 :") if s=="1": if sum>b: print("金額不足,請繼續充值") if sum<b: print("購物成功,歡迎下次光臨") break if s=="2": continue else: print("購物成功")
2、驗證碼
import random #導入random模塊 temp="" #定義一個空字符串,為後面拼接用 for i in range(4): #循環四次,生成四位的驗證碼 j=random.randrange(5) #隨機生成一個數 if j==3 or j==1: #如果生成1或3的話就讓第一位為數字 b=random.randrange(0,9) temp=temp+str(b) #生成的整數必須轉成字符串類型進行拼接 else: a=random.randrange(65,90) temp=temp+chr(a) print(temp)
3、三級聯動
dict= { "東北":{ "吉林省":{ "吉林市":[‘吉林市1‘,‘吉林市2‘], "長春":[‘長春1‘,‘長春2‘],}, "遼寧省":{ "沈陽":[‘沈陽1‘,‘沈陽2‘,‘沈陽3‘], "大連":[‘大連1‘,‘大連2‘], }, }, ‘華北‘:{ ‘河北省‘:{ ‘廊坊‘:[‘廊坊1‘,‘廊坊2‘], ‘保定‘:[‘保定1‘,‘保定2‘], }, ‘內蒙古‘:{ ‘呼和浩特‘:[‘呼和浩特1‘,‘呼和浩特2‘,‘呼和浩特3‘], ‘包頭‘:[‘包頭1‘,‘包頭2‘] }, }, } for i in dict: print(i) a=input("請輸入所要進入的地區:") for o in dict[a]: print(o) b=input("請輸入要進入的省:") for p in dict[a][b]: print(p) c=input("請輸入所要進入的市:") for l in dict[a][b][c]: print(l)
4、賬號註冊登錄
def login(a,b): """ 用於用戶名和密碼的驗證 :param a: 用戶名 :param b: 密碼 :return:Ture 用戶驗證成功 False 用戶驗證失敗 """ c=open("334.txt","r",encoding="utf-8") for line in c: line=line.strip() #默認strip無參數用於去除換行符和空格 new_line=line.split("*") #有參數,移除兩端指定的值 if new_line[0]==a and new_line[1]==b: return True return False def yanzheng(a): """ 用於驗證用戶名是否存在 :param a: 用戶名 :return: True 用戶名存在 """ c=open("334.txt","r",encoding="utf-8") for line in c: line=line.strip() #默認strip無參數用於去除換行符和空格 new_line=line.split("*") #有參數,移除兩端指定的值 if new_line[0] ==a: return True def zhuche(a,b): """ 用於用戶註冊 :param a: 用戶名 :param b: 密碼 :return: True 註冊成功 """ c = open("334.txt", "a", encoding="utf-8") temp="\n"+ a + "*" + b c.write(temp) return True def min(): print("歡迎登錄英雄聯盟官網") m=input("登錄:1;註冊:2") if m=="1": f1=input("請輸入用戶名:") f2=input("請輸入密碼:") f3 = login(f1, f2) if f3: print("登錄成功") else: print("登錄失敗") elif m=="2": f1=input("請輸入用戶名:") f2=input("請輸入密碼:") f4=yanzheng(f1) if f4: print("用戶名已存在") else: f5=zhuche(f1,f2) if f5: print("恭喜註冊成功") min()
計算器
import re def f1(a): a = re.sub(" ","",a) a = a.replace(‘--‘, ‘+‘).replace(‘++‘, ‘+‘).replace(‘-+‘, ‘-‘).replace(‘+-‘, ‘-‘) if "*" in a or "/" in a: while True: b = re.split("([\-]?\d+[.]?\d*[/*][\-]?\d+[.]?\d*)",a,1) if len(b) == 3: c = re.split("([/*])",b[1]) if c[1]== "*": d = float(c[0])*float(c[2]) a = b[0]+str(d)+b[2] else: d = float(c[0])/float(c[2]) a = b[0]+str(d)+b[2] else: e = re.findall("[\-+]?\d+\.?\d*", a) sun = 0 for i in e: sun = sun + float(i) return sun else: e = re.findall("[\-+]?\d+\.?\d*", a) sun = 0 for i in e: sun = sun + float(i) return sun def f2(a): a = re.sub(" ", "", a) if "*" in a or "/" in a: while True: a = a.replace(‘--‘, ‘+‘).replace(‘++‘, ‘+‘).replace(‘-+‘, ‘-‘).replace(‘+-‘, ‘-‘) b = re.split("(\d+[.]?\d*[/*][\-]?\d+[.]?\d*)", a, 1) if len(b) == 3: c = re.split("([/*])", b[1]) if c[1] == "*": d = float(c[0]) * float(c[2]) a = b[0] + str(d) + b[2] else: d = float(c[0]) / float(c[2]) a = b[0] + str(d) + b[2] else: e = re.findall("[\-+]?\d+\.?\d*", a) sun = 0 for i in e: sun = sun + float(i) return sun else: e = re.findall("[\-+]?\d+\.?\d*", a) sun = 0 for i in e: sun = sun + float(i) return sun while True: r=re.split("\(([^()]+)\)",a,1) if len(r)==3: m=f1(r[1]) a=r[0]+str(m)+r[2] print(a) else: r=f2(a) print(r) break print(eval(a))
驗證碼
方法一
import random li=[] for i in range(6): a=random.randrange(0,9) if a==2 or a==6: b=random.randrange(0,9) li.append(str(b)) else: b=random.randrange(65,90) li.append(chr(b)) print("".join(li))
遊戲
import random import time import sys def outer(func): def f(n): print("* ☆∵▁▂▄▂▁★∵∴☆★∵∴\n∴★◢█████◣ * ☆∴★∵★ * ☆\n☆◢████☆██◣∴ 天氣冷了,☆\n◢■◤█████◥█◣送你一件毛衣, * ★\n◥◤ █████◥◤∵小心別著涼了\n\t █████\n\t █████") r = func(n) return r return f for i in range(31): time.sleep(0.2) sys.stdout.write("\r") sys.stdout.write("%s %% |%s"%(int((i/30)*100),i*"██")) sys.stdout.flush() print("\n\t\t歡迎來到英雄聯盟PK擂臺") print("劍聖\t\t石頭\t\t亞索\t\t瑞文\t\t薇恩\t\t老鼠\n卡牌\t\t劫\t\t劍姬\t\t安妮\t\t龍王\t\t女槍\n男槍\t\t螳螂\t\t蠻王\t\tEZ\t\t金克斯") opp = input("請選擇戰鬥的英雄1:") odd = input("請選擇戰鬥的英雄2:") occ = input("確定:Y 重選:N") class Swordman: def __init__(self,name): self.blood = 2000 self.Name = name @outer def Q(self): self.blood = self.blood - 100 print("霸道的%s使用地震碎片技能,%s受到100點傷害,當前血量:%s"%(opp,odd,self.blood)) @outer def W(self): self.blood = self.blood + 200 print("%s得到200點血量,當前血量:%s"%(odd,self.blood)) @outer def E(self): self.blood = self.blood - 150 print("霸道的%s使用野蠻打擊技能,%s受到150點傷害,當前血量:%s"%(opp,odd,self.blood)) @outer def R(self): self.blood = self.blood - 300 print("霸道的%s使用勢不可擋技能,%s受到300點攻擊,當前血量:%s"%(opp,odd,self.blood)) class Rock: def __init__(self,name): self.blood = 3000 self.Name = name @outer def Q(self): self.blood = self.blood - 150 print("%s受到150點攻擊,當前血量:%s" %(odd,self.blood)) @outer def W(self): self.blood = self.blood - 120 print("%s受到120點攻擊,當前血量:%s" %(odd,self.blood)) @outer def E(self): self.blood = self.blood - 110 print("石頭受到110點攻擊,當前血量:%s" % self.blood) @outer def R(self): self.blood = self.blood - 250 print("%s受到250點攻擊,當前血量:%s" %(odd,self.blood)) obj1 = Swordman(opp) obj2 = Rock(odd) print(" %s\n 血量:%s\n Q攻擊:%s\n W攻擊:%s\n E攻擊:%s\n R攻擊:%s\n"%(opp,obj1.blood,150,120,110,250)) print(" %s\n 血量:%s\n Q攻擊:%s\n W攻擊:%s\n E攻擊:%s\n R攻擊:%s\n"%(odd,obj2.blood,100,200,150,300)) while True: time.sleep(0.5) ret=random.randrange(9) if ret == 1 or ret == 3 or ret == 5 or ret == 7: tump = random.randrange(9) if tump == 1 or tump == 2: obj1.Q() elif tump == 3 or tump == 4: obj1.W() elif tump == 5 or tump == 6: obj1.E() else: obj1.R() else: att = random.randrange(9) if att == 1 or att == 2: obj2.Q() elif att == 3 or att == 4: obj2.W() elif att == 5 or att == 6: obj2.E() else: obj2.R() if obj1.blood < 0: print("%sKO%s"%(opp,odd)) break elif obj2.blood < 0: print("%sKO%s"%(odd,opp)) break
輪播圖
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 |
<! DOCTYPE html>
< html lang="en">
< head >
< meta charset="UTF-8">
< title >Title</ title >
< script src="jquery-1.9.1.min.js"></ script >
< style >
*{
margin: 0;
padding: 0;
}
.box{
position: relative;
width: 730px;
height: 454px;
border: dashed 5px gold;
margin: 0 auto;
}
img{
position: absolute;
}
.num{
position: absolute;
font-size: 0; /*使li之間的間距為0*/
width: 100%; /*使文本內容居中*/
text-align: center;
bottom: 10px;
}
.num li{
width: 20px;
height: 20px;
border-radius: 60%;
line-height: 20px;
text-align: center;
list-style: none;
display: inline-block;
font-size: 16px;
margin: 5px;
cursor: pointer;
}
.r,.l{
display: inline-block;
width: 30px;
height: 60px;
background-color: #9f9f9f;
font-size: 25px;
line-height: 60px;
text-align: center;
position: absolute;
top: 50%;
right:0;
margin-top: -30px;
cursor: pointer;
}
.l{
left: 0;
}
.rl{
display: none;
}
.box:hover .rl{
display: block;
}
.num ul li.color{
background-color: red;
color: white;
}
</ style >
</ head >
< body >
< div class="box">
< div class="tu">
< img src="1.jpg" >
< img src="2.jpg" >
< img src="3.jpg" >
< img src="4.jpg" >
< img src="5.jpg" >
</ div >
< div class="num">
< ul >
< li >1</ li >
< li >2</ li >
< li >3</ li >
< li >4</ li >
< li >5</ li >
</ ul >
</ div >
< div class="rl hide" >
< span class="l"><</ span >
< span class="r">></ span >
</ div >
</ div >
< script >
$(".num li").first().addClass("color");
$(".num li").mouseover(function () {
$(this).addClass("color").siblings().removeClass("color");
var index = $(this).index();
i=index;/*表示鼠標放上去再離開後,能夠走他後面的那個圖,而不是跟定時器的節奏走*/
$("img").eq(index).fadeIn(1000).siblings().fadeOut(1000);
});
var time = setInterval(move,2000);
i = 0;
function move() {
i++;
if(i==5){i=0}
$(".num li").eq(i).addClass("color").siblings().removeClass("color");
$("img").eq(i).fadeIn(1000).siblings().fadeOut(1000);
}
$(".box").hover(function () { /*hover裏面的第一個函數表示鼠標放上去以後執行,後一個表示鼠標移除後執行*/
clearInterval(time)
},function () {
var time = setInterval(move,2000);
}
);
$(".r").click(function () {
move()
});
$(".l").click(function () {
i=i-2;
if(i==-2){i=3}
move()
})
</ script >
</ body >
</ html >
|
現實應用實例