1 import time
2 import random 3 4 player_victory = 0 5 enemy_victory = 0 6 a1 = True 7 while a1: 8 for i in range(1,4): 9 time.sleep(1.5) 10 print(' \n——————現在是第 %s 局——————' % i) 11 #對比之前:(' \n——————現在是第'+str(i)+'局——————') 12 player_life = random.randint(100,150) 13 player_attack = random.randint(30,50) 14 enemy_life = random.randint(100,150) 15 enemy_attack = random.randint(30,50) 16 17 print('【玩家】\n血量:%s\n攻擊:%s' % (player_life,player_attack)) 18 print('------------------------') 19 time.sleep(1) 20 print('【敵人】\n血量:%s\n攻擊:%s' % (enemy_life,enemy_attack)) 21 print('-----------------------') 22 time.sleep(1) 23 while player_life > 0 and enemy_life > 0: 24 player_life = player_life - enemy_attack 25 enemy_life = enemy_life - player_attack 26 print('你發起了攻擊,【敵人】剩余血量%s' % enemy_life) 27 print('敵人向你發起了攻擊,【玩家】的血量剩余%s' % player_life) 28 print('-----------------------') 29 time.sleep(1.2) 30 if player_life > 0 and enemy_life <= 0: 31 player_victory += 1 32 print('敵人死翹翹了,你贏了!') 33 elif player_life <= 0 and enemy_life > 0: 34 enemy_victory += 1 35 print('悲催,敵人把你干掉了!') 36 else: 37 print('哎呀,你和敵人同歸於盡了!') 38 if player_victory > enemy_victory : 39 time.sleep(1) 40 print('\n【最終結果:你贏了!】') 41 elif enemy_victory > player_victory: 42 print('\n【最終結果:你輸了!】') 43 else: 44 print('\n【最終結果:平局!】') 45 input('如不想繼續,請輸入n:') 46 request = input 47 if request == 'n': 48 break
再來一局的方案有兩種:1.通過break 2.通過判斷布爾值為true or false進行再次循環或者結束
2.format函數:
1 # % 格式化:str % ()
2 print('{}{}'.format('數字:',0))
3 print('{0},{1}'.format(0,1)) 4 print('{0},{0},{1}'.format(0,1,0)) 5 6 name1 = 'Python' 7 print('I am learning {}'% name1) # 注:當只跟一個數據時,%后可不加括號,format()一定要有。 8 9 # format()格式化函數:str.format() 10 print('\n{}{}'.format('數字:',0)) # 優勢1:不用擔心用錯類型碼。 11 print('{},{}'.format(0,1)) # 不設置指定位置時,默認按順序對應。 12 print('{1},{0}'.format(0,1)) # 優勢2:當設置指定位置時,按指定的對應。 13 print('{0},{1},{0}'.format(0,1)) # 優勢3:可多次調用format后的數據。 14 15 name2 = 'Python基礎語法' 16 print('我正在學{}'.format(name2)) # format()函數也接受通過參數傳入數據。
不管是‘%’ 格式化輸出還是format()格式化輸出,其基本語法相似,但format函數更為精簡
%s 表示字符串 %d表示整數 %f表示浮點數,而format()不用注意類型
3.range()
range()函數有三種形式:1.range(a)表示,從0開始到a;2.range(a,b)表示,從a開始到b; 3.range(a,b,c)表示從a到b 中間每隔c個數 記一次數,直到b。
range()函數經常用於 for循環語句中
4.延時函數
延時函數與隨機生成數函數一致需要模板的引用。
import time //引用模板
time.sleep(a)//a為延時的secs(間隔秒數 seconds)
5.隨機數函數
import random //引用模板
rabdom.randint(0~9)//在0-9之間任選一個數