鱼C论坛

 找回密码
 立即注册
查看: 28146|回复: 599

[技术交流] Python:每日一题 30(答题领鱼币)

   关闭 [复制链接]
发表于 2017-4-18 17:44:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
今天的题目很简单,也很开放~如果想知道,请回复

游客,如果您要查看本帖隐藏内容请回复



欢迎小伙伴们,一起答题!
如果你有能力,欢迎加入我们!
已经上车老司机:@冬雪雪冬 @lumber2388779 @ooxx7788 @gopythoner
O(≧口≦)O
帅的人都上车了,而丑的人还在犹豫

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-4-18 17:48:15 | 显示全部楼层
看到题目简单我才来的
要是难,我就举报你,欺骗大众

点评

我很赞同!: 5.0
我很赞同!: 5
我想举报你..............  发表于 2017-4-18 17:49
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2017-4-18 17:48:56 | 显示全部楼层
gopythoner 发表于 2017-4-18 17:48
看到题目简单我才来的
要是难,我就举报你,欺骗大众

大佬,我出过难题吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 18:03:24 | 显示全部楼层
新手·ing 发表于 2017-4-18 17:48
大佬,我出过难题吗

这个题目应该是猜数字的延伸吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-18 18:07:05 | 显示全部楼层
gopythoner 发表于 2017-4-18 18:03
这个题目应该是猜数字的延伸吧

有关系吗
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 18:13:25 | 显示全部楼层
坐等楼下高手解答~~~⊙_⊙很好、很强大,这个一定得支持!!!⊙_⊙^_^
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 18:31:25 | 显示全部楼层
看到你这题目我倒是想到一个有趣的程序,就是通过你不断地和python玩剪刀石头布游戏,让python学习你出的规律,从而预测你下一次会出什么,然后打败你。
其实每个人玩剪刀石头布都是有固定规律的,或者称为潜意识,可能你自己都不一定注意到,但是python可以通过不断的学习发现其中的规律,这一定会是个有意思的项目。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 2 反对 0

使用道具 举报

 楼主| 发表于 2017-4-18 18:38:52 | 显示全部楼层
jerryxjr1220 发表于 2017-4-18 18:31
看到你这题目我倒是想到一个有趣的程序,就是通过你不断地和python玩剪刀石头布游戏,让python学习你出的规 ...

有意思~做出来吧大佬还是打捞
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 18:54:06 | 显示全部楼层
?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-4-18 19:00:03 | 显示全部楼层
开开看看吧。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 19:21:14 | 显示全部楼层
看题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-4-18 19:48:06 | 显示全部楼层
本帖最后由 dori233 于 2017-4-18 20:15 编辑

  1. # -*- coding: utf-8 -*-
  2. from random import randint

  3. guess = randint(1, 3)
  4. while True:
  5.     ask = input('1锤,2剪,3布\n请输入数字:')
  6.     if (ask in '123') and (len(ask) == 1):
  7.         ask = int(ask)
  8.         break
  9.     else:
  10.         print('输入错误,请重新输入')
  11.         continue

  12. gus = ['锤', '剪', '布']
  13. if guess == 1:
  14.     print('电脑出了%s,你出的是%s\n你赢了' % (gus[ask-3], gus[ask-1]))
  15. elif guess == 2:
  16.     print('电脑出了%s,你出的是%s\n你输了' % (gus[ask-2], gus[ask-1]))
  17. else:
  18.     print('电脑出了%s,你出的是%s\n平局!' % (gus[ask-1], gus[ask-1]))
复制代码

随便想了一下....其实我就是把结果作为最终的想法.
反正只有3个结果,然后不考虑电脑出啥然后比较才赢.
这叫赢在起跑线...
PS:输入编辑了一下.防止超出范围

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
新手·ing + 3 + 3 好极了

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2017-4-18 19:54:53 | 显示全部楼层
在那。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-4-18 20:08:07 | 显示全部楼层
本帖最后由 ooxx7788 于 2017-4-18 20:16 编辑
  1. import random as r

  2. guess = ['石头', '剪刀', '布', '石头']
  3. player = input(f'{guess[0:3]}:')
  4. while player != 'Q':
  5.     try:
  6.         if player not in guess:
  7.             raise
  8.         CPU = r.choice(guess[0:3])
  9.         print(f'CPU:{CPU}')
  10.         if player == CPU:
  11.             print('Draw!')
  12.         elif guess[guess.index(player) + 1] == CPU:
  13.             print('Player Win!')
  14.         else:
  15.             print('CPU win!')
  16.         player = input(f'{guess[0:3]}:')
  17.     except:
  18.         player = input(f'输入有误!{guess[0:3]}:')
复制代码


python 3.6才可以用!这题目太简单了,大佬们应该不回答了!
输出:
  1. ['石头', '剪刀', '布']:石头
  2. CPU:布
  3. CPU win!
  4. ['石头', '剪刀', '布']:剪刀
  5. CPU:石头
  6. CPU win!
  7. ['石头', '剪刀', '布']:布
  8. CPU:石头
  9. Player Win!
  10. ['石头', '剪刀', '布']:Q
复制代码

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
新手·ing + 3 + 3 咳咳,人家大佬要做深度学习呢

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-18 20:12:11 | 显示全部楼层
  1. from random import *
  2. robot_choice_text = ['石头','剪刀','布']
  3. while True:   
  4.     robot_choice = choice(robot_choice_text)
  5.     player_choice = input('石头剪刀布(输入退出来退出程序):')
  6.     if player_choice not in robot_choice_text:
  7.             print('请输入石头或剪刀或布!')
  8.     if player_choice == robot_choice:
  9.             print('平局啦!')
  10.             print('机器人选择的是%s!' % (robot_choice))
  11.     if player_choice == '石头' and robot_choice == '剪刀':
  12.             print('你赢啦!')
  13.             print('机器人选择的是%s!' % (robot_choice))
  14.     elif player_choice == '石头' and robot_choice == '布':
  15.             print('你输啦!')
  16.             print('机器人选择的是%s!' % (robot_choice))
  17.     if player_choice == '剪刀' and robot_choice == '布':
  18.             print('你赢啦!')
  19.             print('机器人选择的是%s!' % (robot_choice))
  20.     elif player_choice == '剪刀' and robot_choice == '石头':
  21.             print('你输啦!')
  22.             print('机器人选择的是%s!' % (robot_choice))
  23.     if player_choice == '布' and robot_choice == '石头':
  24.             print('你赢啦!')
  25.             print('机器人选择的是%s!' % (robot_choice))
  26.     elif player_choice == '布' and robot_choice == '剪刀':
  27.             print('你输啦!')
  28.             print('机器人选择的是%s!' % (robot_choice))
  29.     if player_choice == '退出':
  30.             print('退出成功!')
  31.             break
  32.         
复制代码

我这个没做什么技巧,新手都能看懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 20:18:33 | 显示全部楼层
新手·ing 发表于 2017-4-18 20:12
我这个没做什么技巧,新手都能看懂

你自己说的简洁呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 21:06:53 | 显示全部楼层
简单的题就做一下。
  1. import random
  2. list1 = ['石头', '剪刀', '布']
  3. list2 = ['平局', '计算机赢了', '你赢了']
  4. while True:
  5.     computer = random.randint(0, 2)
  6.     human = input('开始猜拳,请输入0:石头,1:剪刀,2:布。仅输入回车退出:')
  7.     if human == '':
  8.         break
  9.     human = int(human)
  10.     result = (human - computer) % 3
  11.     print('计算机出的是%s, 你出的是%s, %s'%(list1[computer], list1[human], list2[result]))
复制代码
  1. 开始猜拳,请输入0:石头,1:剪刀,2:布。仅输入回车退出:0
  2. 计算机出的是剪刀, 你出的是石头, 你赢了
  3. 开始猜拳,请输入0:石头,1:剪刀,2:布。仅输入回车退出:1
  4. 计算机出的是剪刀, 你出的是剪刀, 平局
  5. 开始猜拳,请输入0:石头,1:剪刀,2:布。仅输入回车退出:1
  6. 计算机出的是布, 你出的是剪刀, 你赢了
  7. 开始猜拳,请输入0:石头,1:剪刀,2:布。仅输入回车退出:2
  8. 计算机出的是剪刀, 你出的是布, 计算机赢了
  9. 开始猜拳,请输入0:石头,1:剪刀,2:布。仅输入回车退出:2
  10. 计算机出的是石头, 你出的是布, 你赢了
  11. 开始猜拳,请输入0:石头,1:剪刀,2:布。仅输入回车退出:0
  12. 计算机出的是剪刀, 你出的是石头, 你赢了
复制代码

点评

我很赞同!: 5.0
我很赞同!: 5
天啊  发表于 2017-4-18 21:07

评分

参与人数 1鱼币 +1 收起 理由
mstplay + 1 原來可以這樣寫

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 10 反对 0

使用道具 举报

发表于 2017-4-18 21:52:57 | 显示全部楼层
本帖最后由 gopythoner 于 2017-4-18 21:55 编辑

来吧,石头剪刀布

  1. import random

  2. def guess():
  3.     dic = {"石头":1,"剪刀":2,"布":3}
  4.     while True:
  5.         x = random.choice(["石头","剪刀","布"])
  6.         xnum = dic[x]
  7.         guess = input("来玩石头剪刀布吧!我已经秘密的出完了,快说出你出什么:")
  8.         if guess != "石头" and guess != "剪刀" and guess != "布":
  9.             print("说好的玩石头剪刀布呢?你会不会出,不会就别玩了,去玩王者农药吧!!!")
  10.         elif guess == x:
  11.             print("我们出的都是“{}”,打平了,继续来玩吧!".format(guess))
  12.         elif dic[guess]-xnum == -1 or dic[guess]-xnum == 2:
  13.             print("你出的是“{}”,我出的是“{}”,你赢了!".format(guess,x))
  14.         else:
  15.             print("你出的是“{}”,我出的是“{}”,我赢了!".format(guess,x))
  16. guess()
复制代码



看我玩的
  1. 来玩石头剪刀布吧!我已经秘密的出完了,快说出你出什么:石头
  2. 你出的是“石头”,我出的是“布”,我赢了!
  3. 来玩石头剪刀布吧!我已经秘密的出完了,快说出你出什么:石头
  4. 我们出的都是“石头”,打平了,继续来玩吧!
  5. 来玩石头剪刀布吧!我已经秘密的出完了,快说出你出什么:石头
  6. 你出的是“石头”,我出的是“剪刀”,你赢了!
  7. 来玩石头剪刀布吧!我已经秘密的出完了,快说出你出什么:石头
  8. 你出的是“石头”,我出的是“布”,我赢了!
  9. 来玩石头剪刀布吧!我已经秘密的出完了,快说出你出什么:不玩
  10. 说好的玩石头剪刀布呢?你会不会出,不会就别玩了,去玩王者农药吧!!!
  11. 来玩石头剪刀布吧!我已经秘密的出完了,快说出你出什么:石头
  12. 你出的是“石头”,我出的是“剪刀”,你赢了!
  13. 来玩石头剪刀布吧!我已经秘密的出完了,快说出你出什么:石头
  14. 我们出的都是“石头”,打平了,继续来玩吧!
  15. 来玩石头剪刀布吧!我已经秘密的出完了,快说出你出什么:
复制代码

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
新手·ing + 3 + 3 支持楼主!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2017-4-18 21:53:43 | 显示全部楼层
gopythoner 发表于 2017-4-18 21:52
来吧,石头剪刀布

你们写的中文真有趣
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-4-18 21:56:51 | 显示全部楼层
新手·ing 发表于 2017-4-18 21:53
你们写的中文真有趣

看我的,我改简单了,之前那个随机出的我改用x = random.choice(["石头","剪刀","布"])一句搞定了,之前忘了这个函数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-3-29 18:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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