千殇 发表于 2018-9-7 10:42:19

pythonon 发表于 2018-9-6 16:18
"""第一个小游戏 v2.2.1"""
我按照你的代码运行了一下,还是有点问题唉,第三次猜测的时候显示



time=4          #改1
print("不妨猜一下我心里想的是哪个数字:")
while 1:                   #改2
    temp = input()
    guess = int(temp)

    if guess == 8:
      print('哎呀,你是我肚子里的小蛔虫吗?!')
      print('猜中了也没奖励,哈哈哈!')
    else:
      if guess>8:
            print('哼,大了大了~~~')          #改3
      else:
            print('嘿,小了小了~~~')
    time=time-1

   
    if time==1 or guess==8:          #改4
      break
    print("请重新输入吧")

   
print("gameover")


我把循环交给了后面的break感觉没啥问题

pythonon 发表于 2018-9-7 18:45:52

千殇 发表于 2018-9-7 10:42
我把循环交给了后面的break感觉没啥问题

我写了半天没写出来....

千殇 发表于 2018-9-19 09:47:00

"""第一个小游戏 v4.1.0"""
"""全新改版代码"""
"""加入输入检测,防止程序崩溃"""
"""修改一些细节"""
"""加入了萌萌的颜表情(✿◡‿◡)"""

import random    #导入 random 模块
import re      #导入 re 模块

time = 3
count = 0
num = 0

print("""
欢迎体验猜数字小游戏
{LV0.新手}
{LV1.简单}
   {LV2.一般}
    {LV3.困难}
   {LV4.噩梦}
      {LV5.地狱}
*′∀`)′∀`)*′∀`)*′∀`)
请选择难度:""",end="")

r = input()
r = re.sub('\D','',r)   #抽出数字
if r.strip()=="":       #检查是否含有数字
    print("\n调皮了吧,不过恭喜你翻出隐藏难度\n<( ̄ˇ ̄)/{LV6.调戏}\n你有99次机会哟!")
    n = 1000
    time = 99
else:
    r=int(r)
    if r==0:
      n = 5
    elif r==1:
      n = 10
    elif r==2:
      n = 20
    elif r==3:
      n = 50
    elif r==4:
      n = 100
    else:
      n = 1000

secret = random.randint(1,n+1)   #随机的范围 根据难度调整

print("\n猜猜(ง •_•)ง{1-%s}之间的数:"%n)
while time:                        #机会内循环即可,猜中了可以用break跳出循环
    print("我猜一定是:",end='')
    num = input()
    if num.isdigit():            #检查玩家输入是否有误,防止程序崩溃
      num = int(num)
      
      if num<1:
            print("唉,现在就放弃太可惜了 ╮╯▽╰╭")
            break
      elif num>n:
            print("调皮,超范围了都! ̄へ ̄")
      elif num>secret:
            print("哎呀哎呀,太大了!o_O")
      elif num<secret:
            print("还不行哦,太小了!O_o")
      else:
            count += 1
            if count==1:         #算是奖励机制?
                print("o(*≧▽≦)ツ")
            elif count==2:
                print("(o゜▽゜)o☆")
            elif 2<count<=n:
                print("o(* ̄▽ ̄*)o")
            break
      time -= 1
      count += 1      #奖励机制计数
      if time!=0:
            print("\n你还有(๑•̀-•́)و✧[%s]次机会:"%time)
            
    else:
      print("乱输!崩溃了怎么办!!!o( ̄ヘ ̄o#)")


print("\n≡ω≡{游戏结束了呢,下次再来啊!}≡ω≡")
input()

千殇 发表于 2018-9-19 09:47:57

哇颜表情都被和谐了吗{:10_247:} {:10_247:} {:10_247:}

千殇 发表于 2018-9-19 10:06:15

本帖最后由 千殇 于 2018-9-19 10:08 编辑

"""第一个小游戏 v4.1.1"""
"""加入字典"""
"""加入输入检测,防止程序崩溃"""
"""修改一些细节"""
"""加入了萌萌的颜表情(=-=)"""

import random    #导入 random 模块
import re      #导入 re 模块

time = 3
count = 0
num = 0
dict = {'0':5,'1':10,'2':20,'3':50,'4':100}

print("""
欢迎体验猜数字小游戏
{LV0.新手}
{LV1.简单}
   {LV2.一般}
    {LV3.困难}
   {LV4.噩梦}
      {LV5.地狱}
*′A`)*′A`)*A`)*′A`)
请选择难度:""",end="")

r = input()
r = re.sub('\D','',r)   #抽出数字
if r.strip()=="":       #检查是否含有数字
    print("\n调皮了吧,不过恭喜你翻出隐藏难度\n<( ̄ˇ ̄)/{LV6.调戏}\n你有99次机会哟!")
    n = 1000
    time = 99
else:
    n = dict.get(r,500)

secret = random.randint(1,n+1)   #随机的范围 根据难度调整

print("\n猜猜<( ̄ˇ ̄)/{1-%s}之间的数:"%n)
while time:                        #机会内循环即可,猜中了可以用break跳出循环
    print("我猜一定是:",end='')
    num = input()
    if num.isdigit():            #检查玩家输入是否有误,防止程序崩溃
      num = int(num)
      
      if num<1:
            print("唉,现在就放弃太可惜了 ╮╯▽╰╭")
            break
      elif num>n:
            print("调皮,超范围了都! ̄へ ̄")
      elif num>secret:
            print("哎呀哎呀,太大了!o_O")
      elif num<secret:
            print("还不行哦,太小了!O_o")
      else:
            count += 1
            if count==1:         #算是奖励机制?
                print("o(*≧▽≦)ツ")
            elif count==2:
                print("(o゜▽゜)o☆")
            elif 2<count<=n:
                print("o(* ̄▽ ̄*)o")
            break
      time -= 1
      count += 1      #奖励机制计数
      if time!=0:
            print("\n你还有<( ̄ˇ ̄)/[%s]次机会:"%time)
            
    else:
      print("乱输!崩溃了怎么办!!!o( ̄ヘ ̄o#)")


print("\nn≡ω≡n{游戏结束了呢,下次再来啊!}n≡ω≡n")
input()

千殇 发表于 2018-9-19 21:00:35

"""第一个小游戏 v4.2.0"""
"""加入是否继续游戏"""
"""加入正确答案揭示"""
"""修改一些细节"""

print("(っ′Ι`)っ欢迎体验猜数字小游戏ヾ(′∀`o)+")

while 1:
    print("""
开始▄︻┻═┳一(1)
退出▄︻┻═┳一(0)
""")
    go=input("▄︻┳═一")
    if go.isdigit():
      go = int(go)
      if go==0:
            break
    else :
      break
    import random    #导入 random 模块
    import re      #导入 re 模块

    time = 3
    count = 1
    num = 0
    dict = {'0':5,'1':10,'2':20,'3':50,'4':100}

    print("""
{LV0.新手}
{LV1.简单}
   {LV2.一般}
    {LV3.困难}
   {LV4.噩梦}
      {LV5.地狱}
*′A`)*′A`)*A`)*′A`)
请选择难度:""",end="")

    r = input()
    r = re.sub('\D','',r)   #抽出数字
    if r.strip()=="":       #检查是否含有数字
      print("\n调皮了吧,不过恭喜你翻出隐藏难度\n<( ̄ˇ ̄)/{LV6.调戏}\n你有99次机会哟!")
      n = 1000
      time = 99
    else:
      n = dict.get(r,500)

    secret = random.randint(1,n+1)   #随机的范围 根据难度调整

    print("\n猜猜<( ̄ˇ ̄)/{1-%s}之间的数:"%n)
    while time:                        #机会内循环即可,猜中了可以用break跳出循环
      print("我猜一定是:",end='')
      num = input()
      if num.isdigit():            #检查玩家输入是否有误,防止程序崩溃
            num = int(num)
            
            if num<1:
                print("唉,现在就放弃太可惜了 ╮╯▽╰╭")
                break
            elif num>n:
                print("调皮,超范围了都! ̄へ ̄")
            elif num>secret:
                print("哎呀哎呀,太大了!o_O")
            elif num<secret:
                print("还不行哦,太小了!O_o")
            else:
                if count==1:         #算是奖励机制?
                  print("o(*≧▽≦)ツ")
                elif count==2:
                  print("(o゜▽゜)o☆")
                else:
                  print("o(* ̄▽ ̄*)o")
                break
            time -= 1
            count += 1      #奖励机制计数
            if time==0:
                print("\n很遗憾(;′д`)ゞ{%s}才对"%secret)
            else:
                print("\n你还有<( ̄ˇ ̄)/[%s]次机会:"%time)
               
      else:
            print("乱输!崩溃了怎么办!!!o( ̄ヘ ̄o#)")


    print("\nn≡ω≡n{游戏结束了呢,下次再来啊!}n≡ω≡n")
    input()

千殇 发表于 2018-9-19 21:07:01

膨胀了写的花里胡哨的看不清{:9_224:}

千殇 发表于 2018-9-19 21:07:37

"""第一个小游戏 v4.5.0特别版"""
"""删除花里胡哨的显示"""


print("猜数字小游戏")

while 1:

    go=input("开始:1\n结束:0")
    if go.isdigit():
      go = int(go)
      if go==0:
            break
    else :
      break
    import random    #导入 random 模块
    import re      #导入 re 模块

    time = 3
    count = 1
    num = 0
    dict = {'0':5,'1':10,'2':20,'3':50,'4':100}

    print("""
{LV0.新手}
{LV1.简单}
{LV2.一般}
{LV3.困难}
{LV4.噩梦}
{LV5.地狱}

请选择难度:""",end="")

    r = input()
    r = re.sub('\D','',r)   #抽出数字
    if r.strip()=="":       #检查是否含有数字
      print("\n隐藏难度{LV6.调戏}")
      n = 1000
      time = 99
    else:
      n = dict.get(r,500)

    secret = random.randint(1,n+1)   #随机的范围 根据难度调整

    print("\n猜猜{1-%s}之间的数:"%n)
    while time:                        #机会内循环即可,猜中了可以用break跳出循环
      print("一定是:",end='')
      num = input()
      if num.isdigit():            #检查玩家输入是否有误,防止程序崩溃
            num = int(num)
            
            if num<1:
                print("现在就放弃太可惜了")
                break
            elif num>n:
                print("超出范围")
            elif num>secret:
                print("太大")
            elif num<secret:
                print("太小")
            else:
                if count==1:         #算是奖励机制?
                  print("棒")
                elif count==2:
                  print("赞")
                else:
                  print("好")
                break
            time -= 1
            count += 1      #奖励机制计数
            if time==0:
                print("\n正确答案:%s"%secret)
            else:
                print("\n还有[%s]次机会:"%time)
               
      else:
            print("要崩溃了")


    print("游戏结束")
    input()

无名指迷了路 发表于 2019-3-14 19:55:33

千殇 发表于 2018-7-18 09:51


为什么,我仿照你这个写了一下,然后出现的结果就是 输入错的数字,然后就回复好多的'输入小了',直接导致软件卡死,

千殇 发表于 2019-3-15 08:07:01

无名指迷了路 发表于 2019-3-14 19:55
为什么,我仿照你这个写了一下,然后出现的结果就是 输入错的数字,然后就回复好多的'输入小了',直接导 ...

我觉得你应该把代码发出来看看{:10_284:}

cdcf 发表于 2019-4-3 09:27:31

{:5_90:}

千殇 发表于 2019-4-4 08:44:04

cdcf 发表于 2019-4-3 09:27


{:5_94:}

fdfdhfdgh 发表于 2019-4-14 16:44:21

{:10_249:}

千殇 发表于 2019-4-14 22:22:03

fdfdhfdgh 发表于 2019-4-14 16:44


{:10_248:}

tiny-blossom 发表于 2019-6-30 19:51:41

本帖最后由 tiny-blossom 于 2019-6-30 20:00 编辑

"""好看点"""

import random
import re
from sys import exit

def main():
    time = 3
    count = 1
    num = 0
    dict = {'0': 5, '1': 10, '2': 20, '3': 50, '4': 100}

    print('猜数字')
    go = int(input('开始:1\n结束:0\n->'))

    while go != 1 and go != 0:
      print('Input 1 or 0.')
      go = int(input('开始:1\n结束:0\n->'))# 重复输入
    if go == 1:
      pass
    elif go == 0:
      exit()

    print('{LV0.新手}{LV1.简单}{LV2.一般}{LV3.困难}{LV4.噩梦}{LV5.地狱}')
    r = input('Level:')
    r = re.sub('\D', '', r)# 抽出数字

    if r.strip() == '':# 检查是否含有数字
      print('隐藏难度{LV6.调戏}')
      n = 1000
      time = 99
    else:
      n = dict.get(r, 500)

    secret = random.randint(1, n + 1)# 随机的范围 根据难度调整
    print('猜猜{1-%s}之间的数:' % n)

    while True:# 机会内循环即可,猜中了可以用break跳出循环
      print('一定是:' , end = '')
      num = input()

      if num.isdigit():# 检查玩家输入是否有误,防止程序崩溃
            num = int(num)
            if num < 1:
                print('现在就放弃太可惜了')
            elif num > n:
                print('超出范围')
            elif num > secret:
                print('太大')
            elif num < secret:
                print('太小')
            else:
                if count == 1:# 算是奖励机制?
                  print('棒')
                elif count == 2:
                  print('赞')
                else:
                  print('好')
                break

            time -= 1
            count += 1# 奖励机制计数

            if time == 0:
                print('正确答案:%s' % secret)
                break
            else:
                print('还有[%s]次机会:' % time)
      else:
            print('要崩溃了!!!')
    print('游戏结束!')

if __name__ == '__main__':
    main()

捞一下。

136942951 发表于 2019-7-20 20:53:03

其实,我们就是应该这样子的,先学会然后根据自己的思路进行改进,有自己的思想,这样敲出的代码才有意思。

新雨花石 发表于 2019-11-18 11:12:29

很好

sxdtcyl658 发表于 2019-11-28 22:15:00

流弊选手~

基因突变 发表于 2019-12-26 11:34:00

学到了
页: 1 [2]
查看完整版本: python第一个小游戏--不务正业