鱼C论坛

 找回密码
 立即注册
查看: 4481|回复: 16

成都趣题 第500001期 十点半

[复制链接]
发表于 2023-1-8 14:15:25 | 显示全部楼层 |阅读模式
本帖最后由 hveagle 于 2023-1-11 17:17 编辑

成都趣题 第500001期 十点半

游戏玩法:
十点半
参考答案:
游客,如果您要查看本帖隐藏内容请回复
[/hide]
奖励区:
名次第1名第2名第3名第4名第5名
等待着变成王者登上宝座~
语言
几楼
奖励展示+8荣誉7鱼币2贡献1技术值最佳答案展示+4荣誉4鱼币展示+3荣誉3鱼币展示+2荣誉展示

下一期
评分:
单选投票, 共有 5 人参与投票
80.00% (4)
20.00% (1)
0.00% (0)
0.00% (0)
0.00% (0)
您所在的用户组没有投票权限
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-8 16:10:06 | 显示全部楼层
本帖最后由 sfqxx 于 2023-1-8 16:14 编辑

@hveagle 在哪玩?怎么玩才能获得奖励?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-8 16:15:11 | 显示全部楼层
sfqxx 发表于 2023-1-8 16:10
@hveagle 在哪玩?怎么玩才能获得奖励?

发趣题
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-8 16:16:52 | 显示全部楼层
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-8 16:17:07 | 显示全部楼层
那我要完了
我不会
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-8 16:18:28 | 显示全部楼层
sfqxx 发表于 2023-1-8 16:17
那我要完了
我不会

你发Scratch
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-8 16:19:08 | 显示全部楼层
代码怎么发(除图片)
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-8 16:19:39 | 显示全部楼层
它是一块一块的
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-8 18:40:05 | 显示全部楼层
然后我要做什么?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2023-1-8 19:08:21 | 显示全部楼层
zhangjinxuan 发表于 2023-1-8 18:40
然后我要做什么?

你报名了吗?
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-8 19:42:03 | 显示全部楼层
没看懂
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-8 21:05:25 | 显示全部楼层
本帖最后由 AhrimanSefid 于 2023-1-8 21:12 编辑

  1. import random

  2. cards = {"A":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8,"9":9,"J":0.5,"Q":0.5,"K":0.5,"Little Joker":0.5,"Big Joker":0.5}

  3. player = True
  4. player_card = []
  5. player_card_number = []
  6. computer = True
  7. computer_card = []
  8. computer_card_number = []

  9. print("目前有这些卡牌:")
  10. for item in cards.keys():
  11.         print(item)

  12. for i in range(5):
  13.         player_card.append(random.sample(cards.keys,1))
  14.         player_card_number.append(player_card[i])
  15.         computer_card.append(random.sample(cards.keys,1))
  16.         computer_card_number.append(computer_card[i])

  17. player_number_total = player_card_number[0]+player_card_number[1]+player_card_number[2]+player_card_number[3]+player_card_number[4]
  18. computer_number_total = computer_card_number[0]+computer_card_number[1]+computer_card_number[2]+computer_card_number[3]+computer_card_number[4]

  19. print("玩家的牌是:",player_card)
  20. print("玩家总共有",str(player_number_total),"点")
  21. print("电脑的牌是:",computer_card)
  22. print("电脑总共有",str(computer_number_total),"点")

  23. if player_number_total > 10.5:
  24.         print("你被淘汰了哟")
  25.         player = False
  26. else:
  27.         pass
  28. if computer_number_total > 10.5:
  29.         print("电脑被淘汰了")
  30.         computer = False
  31. else:
  32.         pass

  33. if player == True and computer == True:
  34.         print("你们还可以继续游戏")
  35.         if player_number_total != 10.5 and computer_number_total != 10.5:
  36.                 player_ask_number = int(input("你想要再抽几张牌?(1~4)"))
  37.                 computer_ask_number = random.randint(1,4)
  38.                 for i in range(player_ask_number):
  39.                         player_card.append(random.sample(cards.keys,1))
  40.                         player_card_number.append(player_card[i+5])
  41.                 for i in range(computer_ask_number):
  42.                         computer_card.append(random.sample(cards.keys,1))
  43.                         computer_card_number.append(computer_card[i+5])
  44.                 player_number_len = len(player_card_number)
  45.                 computer_number_len = len(computer_card_number)
  46.                 player_number_total = player_card_number[0]+player_card_number[1]+player_card_number[2]+player_card_number[3]+player_card_number[4]+player_card_number[5]+player_card_number[player_number_len]
  47.                 computer_number_total = computer_card_number[0]+computer_card_number[1]+computer_card_number[2]+computer_card_number[3]+computer_card_number[4]+computer_card_number[5]+computer_card_number[computer_number_len]
  48.                 if player_number_total > 10.5 and computer_number_total > 10.5:
  49.                         print("都没有赢哟,再来一局吧")
  50.                 elif player_number_total <= 10.5 and computer_number_total > 10.5:
  51.                         print("哈,你赢了,祝贺")
  52.                 elif player_number_total > 10.5 and computer_number_total <= 10.5:
  53.                         print("电脑赢了,继续加油")
  54.                 else:
  55.                         if player_number_total > computer_number_total:
  56.                                 print("哈,你赢了,祝贺")
  57.                         elif player_number_total < computer_number_total:
  58.                                 print("电脑赢了,继续加油")
  59.                         else:
  60.                                 print("平局哟,再来一局吧")
  61.         elif player_number_total == 10.5 and computer_number_total != 10.5:
  62.                 print("哈,你赢了,祝贺")
  63.         elif player_number_total != 10.5 and computer_number_total == 10.5:
  64.                 print("电脑赢了,继续加油")
  65.         else:
  66.                 print("都没有赢哟,再来一局吧")
  67. elif player == True and computer == False:
  68.         print("哈,你赢了,祝贺")
  69. elif player == False and computer == True:
  70.         print("电脑赢了,继续加油")
  71. else:
  72.         print("都没有赢哟,再来一局吧")
复制代码

耗时1.5小时,干就完了
PS:由于是直接写,没有调试,可能会报错,后面我会修改的
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-8 21:13:57 | 显示全部楼层
AhrimanSefid 发表于 2023-1-8 21:05
耗时1.5小时,干就完了
PS:由于是直接写,没有调试,可能会报错,后面我会修改的

修改:TypeError: Population must be a sequence.  For dicts or sets, use sorted(d).
  1. import random

  2. cards = {"A":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8,"9":9,"J":0.5,"Q":0.5,"K":0.5,"Little Joker":0.5,"Big Joker":0.5}

  3. player = True
  4. player_card = []
  5. player_card_number = []
  6. computer = True
  7. computer_card = []
  8. computer_card_number = []

  9. print("目前有这些卡牌:")
  10. for item in cards.keys():
  11.         print(item)

  12. for i in range(5):
  13.         player_card.append(random.sample(list(cards.keys),1))
  14.         player_card_number.append(player_card[i])
  15.         computer_card.append(random.sample(list(cards.keys),1))
  16.         computer_card_number.append(computer_card[i])

  17. player_number_total = player_card_number[0]+player_card_number[1]+player_card_number[2]+player_card_number[3]+player_card_number[4]
  18. computer_number_total = computer_card_number[0]+computer_card_number[1]+computer_card_number[2]+computer_card_number[3]+computer_card_number[4]

  19. print("玩家的牌是:",player_card)
  20. print("玩家总共有",str(player_number_total),"点")
  21. print("电脑的牌是:",computer_card)
  22. print("电脑总共有",str(computer_number_total),"点")

  23. if player_number_total > 10.5:
  24.         print("你被淘汰了哟")
  25.         player = False
  26. else:
  27.         pass
  28. if computer_number_total > 10.5:
  29.         print("电脑被淘汰了")
  30.         computer = False
  31. else:
  32.         pass

  33. if player == True and computer == True:
  34.         print("你们还可以继续游戏")
  35.         if player_number_total != 10.5 and computer_number_total != 10.5:
  36.                 player_ask_number = int(input("你想要再抽几张牌?(1~4)"))
  37.                 computer_ask_number = random.randint(1,4)
  38.                 for i in range(player_ask_number):
  39.                         player_card.append(random.sample(list(cards.keys),1))
  40.                         player_card_number.append(player_card[i+5])
  41.                 for i in range(computer_ask_number):
  42.                         computer_card.append(random.sample(list(cards.keys),1))
  43.                         computer_card_number.append(computer_card[i+5])
  44.                 player_number_len = len(player_card_number)
  45.                 computer_number_len = len(computer_card_number)
  46.                 player_number_total = player_card_number[0]+player_card_number[1]+player_card_number[2]+player_card_number[3]+player_card_number[4]+player_card_number[5]+player_card_number[player_number_len]
  47.                 computer_number_total = computer_card_number[0]+computer_card_number[1]+computer_card_number[2]+computer_card_number[3]+computer_card_number[4]+computer_card_number[5]+computer_card_number[computer_number_len]
  48.                 if player_number_total > 10.5 and computer_number_total > 10.5:
  49.                         print("都没有赢哟,再来一局吧")
  50.                 elif player_number_total <= 10.5 and computer_number_total > 10.5:
  51.                         print("哈,你赢了,祝贺")
  52.                 elif player_number_total > 10.5 and computer_number_total <= 10.5:
  53.                         print("电脑赢了,继续加油")
  54.                 else:
  55.                         if player_number_total > computer_number_total:
  56.                                 print("哈,你赢了,祝贺")
  57.                         elif player_number_total < computer_number_total:
  58.                                 print("电脑赢了,继续加油")
  59.                         else:
  60.                                 print("平局哟,再来一局吧")
  61.         elif player_number_total == 10.5 and computer_number_total != 10.5:
  62.                 print("哈,你赢了,祝贺")
  63.         elif player_number_total != 10.5 and computer_number_total == 10.5:
  64.                 print("电脑赢了,继续加油")
  65.         else:
  66.                 print("都没有赢哟,再来一局吧")
  67. elif player == True and computer == False:
  68.         print("哈,你赢了,祝贺")
  69. elif player == False and computer == True:
  70.         print("电脑赢了,继续加油")
  71. else:
  72.         print("都没有赢哟,再来一局吧")

复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-9 14:42:11 | 显示全部楼层
AhrimanSefid 发表于 2023-1-8 21:13
修改:TypeError: Population must be a sequence.  For dicts or sets, use sorted(d).

Traceback (most recent call last):
  File "C:\Users\Administrator\Desktop\Python\test\t1.py", line 18, in <module>
    player_card.append(random.sample(list(cards.keys),1))
TypeError: 'builtin_function_or_method' object is not iterable
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-9 16:05:49 | 显示全部楼层
chinajz 发表于 2023-1-9 14:42
Traceback (most recent call last):
  File "C:%users\Administrator\Desktop\Python\test\t1.py", lin ...

这个bug我也发现了,但是我在网上查了一堆资料,都没发现我哪里错了,网上大多数都是说这是由于python的内置函数忘了加括号,但我是检查了n遍,就是没发现哪里没有括号,有大佬会的能不能帮我修改一下
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-10 18:09:36 | 显示全部楼层
AhrimanSefid 发表于 2023-1-9 16:05
这个bug我也发现了,但是我在网上查了一堆资料,都没发现我哪里错了,网上大多数都是说这是由于python的 ...

keys后面没加括号
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2023-1-10 20:13:22 | 显示全部楼层
tommyyu 发表于 2023-1-10 18:09
keys后面没加括号

感谢
修改后的代码:
  1. import random

  2. cards = {"A":1,"2":2,"3":3,"4":4,"5":5,"6":6,"7":7,"8":8,"9":9,"J":0.5,"Q":0.5,"K":0.5,"Little Joker":0.5,"Big Joker":0.5}

  3. player = True
  4. player_card = []
  5. player_card_number = []
  6. computer = True
  7. computer_card = []
  8. computer_card_number = []

  9. print("目前有这些卡牌:")
  10. for item in cards.keys():
  11.         print(item)

  12. for i in range(5):
  13.         player_card.append(random.sample(list(cards.keys()),1))
  14.         player_card_number.append(player_card[i])
  15.         computer_card.append(random.sample(list(cards.keys()),1))
  16.         computer_card_number.append(computer_card[i])

  17. player_number_total = player_card_number[0]+player_card_number[1]+player_card_number[2]+player_card_number[3]+player_card_number[4]
  18. computer_number_total = computer_card_number[0]+computer_card_number[1]+computer_card_number[2]+computer_card_number[3]+computer_card_number[4]

  19. print("玩家的牌是:",player_card)
  20. print("玩家总共有",str(player_number_total),"点")
  21. print("电脑的牌是:",computer_card)
  22. print("电脑总共有",str(computer_number_total),"点")

  23. if player_number_total > 10.5:
  24.         print("你被淘汰了哟")
  25.         player = False
  26. else:
  27.         pass
  28. if computer_number_total > 10.5:
  29.         print("电脑被淘汰了")
  30.         computer = False
  31. else:
  32.         pass

  33. if player == True and computer == True:
  34.         print("你们还可以继续游戏")
  35.         if player_number_total != 10.5 and computer_number_total != 10.5:
  36.                 player_ask_number = int(input("你想要再抽几张牌?(1~4)"))
  37.                 computer_ask_number = random.randint(1,4)
  38.                 for i in range(player_ask_number):
  39.                         player_card.append(random.sample(list(cards.keys()),1))
  40.                         player_card_number.append(player_card[i+5])
  41.                 for i in range(computer_ask_number):
  42.                         computer_card.append(random.sample(list(cards.keys()),1))
  43.                         computer_card_number.append(computer_card[i+5])
  44.                 player_number_len = len(player_card_number)
  45.                 computer_number_len = len(computer_card_number)
  46.                 player_number_total = player_card_number[0]+player_card_number[1]+player_card_number[2]+player_card_number[3]+player_card_number[4]+player_card_number[5]+player_card_number[player_number_len]
  47.                 computer_number_total = computer_card_number[0]+computer_card_number[1]+computer_card_number[2]+computer_card_number[3]+computer_card_number[4]+computer_card_number[5]+computer_card_number[computer_number_len]
  48.                 if player_number_total > 10.5 and computer_number_total > 10.5:
  49.                         print("都没有赢哟,再来一局吧")
  50.                 elif player_number_total <= 10.5 and computer_number_total > 10.5:
  51.                         print("哈,你赢了,祝贺")
  52.                 elif player_number_total > 10.5 and computer_number_total <= 10.5:
  53.                         print("电脑赢了,继续加油")
  54.                 else:
  55.                         if player_number_total > computer_number_total:
  56.                                 print("哈,你赢了,祝贺")
  57.                         elif player_number_total < computer_number_total:
  58.                                 print("电脑赢了,继续加油")
  59.                         else:
  60.                                 print("平局哟,再来一局吧")
  61.         elif player_number_total == 10.5 and computer_number_total != 10.5:
  62.                 print("哈,你赢了,祝贺")
  63.         elif player_number_total != 10.5 and computer_number_total == 10.5:
  64.                 print("电脑赢了,继续加油")
  65.         else:
  66.                 print("都没有赢哟,再来一局吧")
  67. elif player == True and computer == False:
  68.         print("哈,你赢了,祝贺")
  69. elif player == False and computer == True:
  70.         print("电脑赢了,继续加油")
  71. else:
  72.         print("都没有赢哟,再来一局吧")

复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-4-25 09:19

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表