石头剪刀布程序流程图_石头剪刀布!我要与电脑决战到天明!(14天)

1、学习心得

原来一直以为,学了这个600集视频,应该就能自己做点啥了,比如我的最终目的:爬学区房

但是我今天学的时候,隐隐觉得,好像不大现实。

毕竟,这都到了200多集,我依然还是个纯粹的小新手。

刚才看了篇文章《Python从入门到精通:一个月就够了!》,心里说着mmp点进去看才明白,这文章是建立在每天要学习6个小时以上,而且实际上已经是有了一定编程基础的。

比较之下,我这每天学2个小时,还是0基础的40岁小白,要想达到精通,估计没有个100天、半年的,应该没啥希望。

好在,今天学的“石头剪刀布”实例,让我产生了一种“我也能编程、跟电脑快乐玩耍”的错觉。

这种感觉还是挺好的。

学习嘛,就是需要有一些及时反馈,让自己感到有收获,才能持续进行的。

bc7e3eb59ff0a30adae90ce27a9fcf04.gif

2、内容总结

今天共学习了14集,内容主要包括:

  • 以“剪刀石头布”为例,练习 多个条件的逻辑运算;
  • 通过换行,调整条件判断代码;
  • 学习导入 随机数模块,及使用方法;
  • 从宏观上了解三大流程;
  • 循环基础: while的使用;
  • 常用的赋值运算符及使用方法。

3、详细内容

if 实例(6集)

102集,石头剪刀布:目标,强化 多个条件 的 逻辑运算;体会 import 导入模块的使用。

从控制台输入要出的拳:石头1,剪刀2,布3;电脑 随机 出拳--先假定电脑只会出石头,完成整体代码功能;比较胜负。

103集,玩家和电脑出拳:复习了input 函数,以及用 int 函数进行类型转换,以及在使用格式化字符串输出的时候,如果有多个变量,应该在 % 后面使用括号,并用逗号分割。

414a844abe107eaf9e60cce5750801f5.png

104集,判断胜负:写玩家胜利的条件,先用 if 解读游戏规则,发现只要满足一个条件程序就继续运行,于是将三个条件使用逻辑运算符 or 连接。

先写完大的表达式,再将注意力放到每个小括号中,每个小括号针对一个游戏规则,发现每个小括号中的两个条件需要同时满足,于是使用 and 连接。

写完三种玩家胜的情况后,思考平局和电脑胜两种情况,哪种好写呢?

自然是平局,于是使用 elif 先处理平局情况。

最后所有其他的情况,甚至包括输入1、2、3以外的数字,都归入 else 中。

b192e9d763880f34875de13b91205256.png

105集,(扩展)增加换行调整条件判断代码:针对 if 语句 涵盖三种情况时,代码过长,给阅读带来困难,如何既整齐又方便?需要调整代码格式。

在 if 后面,叹号前面加一对括号,然后将 or 后面的语句换行,即可实现。

换行的话,应该增加8个空格的缩进,PyCharm是真的强,自动搞定。

c25636adc1dd13da04611bb2987723da.png

106集,随机数的使用:要使用随机数,首先需要导入 随机数 的 模块 --“工具包”。

Import random。

random.randint(a,b), 返回(a,b)之间的整数,包含a 和 b,且 b必须大于 a。

107集,电脑随机出拳:对之前的代码进行微小改进,实现电脑随机出拳的目的。

20677328ac81316bf01943753b5b3d89.png

注意,在导入工具包的时候,应该将导入的语句,放在文件的顶部。

因为这样可以方便下方的代码,在任何需要的时候,使用工具包中的工具。

循环

循环介绍(2集)

108集,目标确定:本章的目标是 三大流程、while循环基本使用、 break 和continue、 while循环嵌套。

109集,三大流程介绍:三大流程包括顺序(从上向下)、分支(根据条件判断,决定执行代码的 分支)和循环(让 特定代码 重复 执行)。

65e1e3d2c639b42f6f7d93c948d6e5e6.png

循环基础(6集)

110集,while 循环基本使用: While 循环最常用的场景就是 让执行的代码 按照 指定的次数 重复 执行。

需求,打印5遍 Hello Python。

格式: while 语句的最后一样要使用冒号。换行4个空格缩进。重点是在 while 上方设置初始条件(计数器)、结尾设置处理条件(计数器 + 1),保证循环按照期望次数执行。

注意: while语句以及缩进部分是一个 完整代码块。

111集,第一个while循环演练:把 Hello Python 打印5遍。

05bff3f689fe409004a9d2189761a74c.png

112集,单步调试 while 循环:通过单步调式按钮,详细讲解 while 循环执行的顺序。

113集,死循环的概念及解决方法:死循环就是由于程序员的原因, 忘记 在循环内部 修改循环的判断条件,导致循环持续执行,程序无法终止。

114集,Python中的赋值运算符:在算数运算时,为了简化代码的编写,Python还提供了一系列的 与 算数运算符 对应的 赋值运算符。

注意: 赋值运算符中间不能使用空格。

最常用的是:c = a+ b 将 a + b的运算结果赋值为 c;

c += a 等效于 c = c + a;

c -= a 等效于 c = c – a。

话说我咋觉得这个并不简洁呢,关键是也不好理解啊。

83e315c923d9ee985e80de8ddaa59093.png

115集,Python中的计数方法:程序世界中的计数方法都是从0开始的。

因此,写程序时,应该尽量养成习惯,除非需求的特殊要求,否则 循环的计数都从0开始。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/551448.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python做地图导航_「Python」利用高德地图做你想做之事

玩grasshopper基本上都知道OpenStreetMap 这个地图网站,毕竟有一个好用的地图插件,可以在Rhino中绘制出所需,但是一个不好的地方就在于国内的数据量太少,无法满足我们的需求。此次所讲的高德地图基本上可以解决我们的痛点&#xf…

elementui分页组件按钮样式修改_Vue使用Elementui修改默认最快方法!

相信大家都需要过,在Vue中使用Elementui的时候,遇到最多也最蛋疼的问题就是修改默认样式,接下来直奔主题;// template :text-inside"true" :stroke- :percentage"70" >-progress>默认样式方法…

mybatis字符串转成数字_计算机储存数字和字符的方法你了解多少?

前语:不要为了读文章而读文章,一定要带着问题来读文章,勤思考。本文链接: http://1t.click/J7E前言最近在学习中涉及到计算机储存、传输数字和字符等操作,由于对字节、2进制、10进制、16进制、ASCII码的概念以及它们之…

usb连接不上 艾德克斯电源_艾德克斯HT3150联机和IT6720校准联机记

大概2年前,坛里入了一台设置电压比输出电压高几伏的IT6720电源,到手发现,里面被修得惨不忍睹。到手的时候是110V的,没想到这种型号,跳线要改焊控制变压器和高压部分两个跳线,只修改了控制变压器跳线&#x…

使用java向ftp上传多张图片_ftp免费空间,利用ftp工具定时连接ftp免费空间教程及java配置...

IIS7服务器管理工具这款ftp客户端软件,可以批量管理ftp站点,还可以实现ftp定时上传、定时下载,定时备份、自动更新等功能。关于ftp客户端功能,它主要实现以下四点功能:1、ftp 批量操作2、ftp 定时同步(上传…

损失函数的意义和作用_损失函数的可视化:浅论模型的参数空间与正则

点击蓝字关注我们作者丨土豆知乎来源丨https://zhuanlan.zhihu.com/p/158857128本文已获授权,不得二次转载前言在深度学习中,我们总是不可避免会碰到各种各样的损失函数。通常来说,损失函数都是高维的函数,难以可视化为人类可以分…

postgres 把一个表的值转成另一个表的字段名_用LUT来做一个可动态配置的卷积核...

引言由于卷积核数据在计算过程中保持不变,更新较慢。这样就可以利用LUT来存储权重并同时进行乘法运算。LUT乘法器的实现很早就已经研究过,本论文正是在此基础上,提出了用于实现可配置的卷积实现方法。基于LUT的乘法器不会受到FPGA中DSP资源的…

mysql储存过程把集合并_MySQL 多日志表结果集合拼接存储过程

通常MySQL单天的日志 只记录当天的日志信息,如果需要查看一月内的日志信息需要对每天的日志表结果集合进行拼接,通常用到 union通常MySQL单天的日志 只记录当天的日志信息,如果需要查看一月内的日志信息需要对每天的日志表结果集合进行拼接,通常用到 uni…

对于一个指针可以多次使用delete_【C++札记】new和delete

malloc,free和new,delete区别:a.malloc,free是C/C的标准库函数。new,delete是c的操作符。b.malloc申请的是内存,严格意义不是“对象”,new申请的可以理解为“对象”,new 时会调用构造函数,返回指向该对象的指针。c.对于…

java循环队列_Java 循环队列的实现

队列概念队列(Queue)是限定只能在一端插入、另一端删除的线性表。允许删除的一端叫做队头(front),允许插入的一端叫做队尾(rear),没有元素的队列称为“空队列”。队列具有先进先出(FIFO)的特性。普通顺序队列存在的问题在普通顺序队列中,入队的操作就是先将尾指针re…

java new 多线程_Java多线程实现(四种方法)

1.继承Thread类,重写run方法(其实Thread类本身也实现了Runnable接口)2.实现Runnable接口,重写run方法3.实现Callable接口,重写call方法(有返回值)4.使用线程池(有返回值)1.继承Thread类,重写run方法每次创建一个新的线程&#xff…

oracle删除唯一索引sql语句_高级SQL之在选择语句中使用更新和删除

点击蓝字关注我吧【本文详细介绍了数据库中在选择语句中使用更新和删除的方法,欢迎读者朋友们阅读、转发和收藏!】1 基本概念1.1 SQL UPDATE 语句Update 语句Update 语句用于修改表中的数据。语法:UPDATE 表名称 SET 列名称 新值 WHERE 列名…

java 多层异常_Java多层嵌套异常处理的基本流程

异常是程序中的一些错误,但并不是所有的错误都是异常,错误有时候是可以避免的。异常的对象有两个来源,一是Java运行时环境自动抛出系统生成的异常,而不管你是否愿意捕获和处理,它总要被抛出!比如除数为0的异…

java 获取子线程_Java 主线程获取子线程返回结果

1.自定义package com.jgyang.com;public class MySyncThreadTest {public static void main(String[] args) throws Exception {CustomRunnable cRunnacle new CustomRunnable();Thread thread new Thread(cRunnacle,"子线程");thread.start(); //子线程执行System…

串口工具securecrt_SecureCRT配置华为交换机部分命令

点上方蓝字“工控先生”免费快速关注本文由“135编辑由于工作需要,昨天临时需要从华为的光电交换机上面的console口查看一些端口的状态等,现整理如下,有需要的可以参考一下:硬件准备串口线,华为交换机连接将RJ45连接到…

java 跳转虚拟目录_java tomcat虚拟目录的深入了解

我们知道,Web网站中的内容(包括网页,图片,音频文件等)一般都存放在App的目录下。但随着网站内容的不断丰富,用户需要把不同层次的内容组织成网站的子目录。我们通常的做法是在网站主目录下新建子目录,并把相关的内容放…

redis工具类_SpringBoot 操作 Redis 数据

SpringBoot 操作 Redis 数据简介 Redis 是一个开源的NoSQL数据库,基于内存的键值存储,速度快。Redis 支持数据结构,如字符串,散列,列表,集和带范围查询的有序集。5种主要数据类型:字符串类型 …

span 里面的文字不显示_“无糖饮料”显示不含糖,为何还这么甜?原来里面加了这个...

长时间的高温天气让人离不开各种饮料,尤其是冰冻过之后味道更清爽的各种水。当你在外面晒着大太阳汗流浃背,突然听到扭开可乐雪碧瓶盖的那一声“ci~~~~”的时候,是不是瞬间有种眼前有个游泳池的感觉?且慢,更适合夏天的…

java的visitor模式_java设计模式(二十一)访问者模式(Visitor)

介绍访问者模式(Visitor Pattern):表示一个作用于某对象结构中的各元素的操作,它使我们可以在不改变各元素的类的前提下定义作用于这些元素的新操作。访问者模式是一种对象行为型模式。简单来说,访问者模式就是一种分离对象数据结构与行为的方…

testlink mysql配置_TestLink安装配置手册

TestLink安装配置手册范围本文仅作为安装和配置TestLink的参考文档。本文的第一部分为TestLink的安装步骤,第二部分是TestLink的配置方法。本文和其他相关文档可在中寻求帮助一般TestLink安装的步骤如下:1.下载TestLink2.解压文件3.创建数据库4.导入缺省…