【头歌-Python】人机交互自学引导

禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137425935
参考教程:B站视频讲解——https://space.bilibili.com/3546616042621301

  • 如果代码存在问题,麻烦大家指正 ~ ~
  • 有帮助麻烦点个赞 ~ ~

    人机交互翻转教学设计

    • 第1关:输出“Hello World!”
    • 第2关:输出“李白,你好!”
    • 第3关:向任何人问好
    • 第4关:格式化输出
    • 第5关:输出多对象
    • 第6关: 同一行输出

第1关:输出“Hello World!”

任务描述
正如破壳的小鸡来到一个新的世界一样,每一个初学编程语言的人,就如一个新的世界,以“Hello World”向一个新的代码世界打招呼。
“Hello World”含有对世界保持好奇心、不断探索新世界的意思,这也是程序员普遍所具有的一种精神!
本关任务:编写一个能在屏幕上输出显示“Hello World!”的小程序,用hello world向世界打招呼,体会到第一份成功的喜悦吧。

相关知识
为了完成本关任务,你需要掌握:

  1. 输出函数
  2. 字符串

输出函数
语法:

print(objects)  # 输出括号中的对象,可以是数字、字符串等

字符串
通俗的理解,字符串就是:包含在一对引号中的一系列字符。

示例如下:

'hello world'
"hello world"
'''hello world'''
"""hello world"""

输出:

hello world

如何输出一串字符
把需要输出的字符放到一对引号中,做为一个字符串,再将字符串放到print后面的括号中做为参数,就可以输出这个字符串了。

print('hello world')  # 注意本例与本关输出要求不同,字母大小写不同

输出:

hello world

编程要求
根据提示,在右侧编辑器补充代码,输出“Hello World!”。

测试说明
平台会对你编写的代码进行测试:

测试输入:

预期输出:

Hello World!

提示:
观察需要输出的字符串,只有字符串中全部字符(区分大小写)与题目要求输出的完全一样时,才能通过测试。

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137425935
# 在下面一行补充代码,输出“Hello World!”
print('Hello World!')

第2关:输出“李白,你好!”

任务描述
本关任务:编写一个能在屏幕上输出显示“李白,你好!”和“李白,你好!”的小程序,向李白同学打招呼,收获大学第一份友谊。

相关知识
为了完成本关任务,你需要掌握:

  1. 输出函数
  2. 中文字符串
  3. 全角与半角

输出函数
语法:

print(objects)

中文字符串
通俗的理解,字符串就是:包含在一对引号中的一系列中文字符。

示例如下:

print('杜甫,你好!')
print("杜甫,你好!")
print('''杜甫,你好!''')
print("""杜甫,你好!""")

输出:

杜甫,你好!

全角与半角

  1. 全角:是一种电脑字符,一个全角字符占用两个标准字符(或两个半角字符)的位置,全角字符占两个字节。 汉字字符和规定了全角的英文字符及国标GB2312-80中的图形符号和特殊字符都是全角字符。在全角中,字母和数字等与汉字一样占据着等宽的位置。
  2. 半角:是指一个字符占用一个标准的字符位置,半角字符占一个字节。 半角就是 ASCII 方式的字符,在没有汉字输入法起作用的时候,输入的字母、数字和字符都是半角的。
    每个半角字符只占用一字节的空间(一字节有8位,共256个编码空间)。汉语、日语、及朝鲜文等象形字语言的字库量远大于256个编码空间,所以改用两个字节来储存。同时,由于中日韩等象形文字的书写习惯,如果统一使用全角字符的话,排列起来也显得整齐。为了排列整齐,英文和其它拉丁文的字符和标点也提供了全角格式。
  3. 全角和半角的区别
    全角和半角主要是针对标点符号来说的,全角标点占两个字节,半角占一个字节。
    不管是半角还是全角,汉字都要占两个字节。
    使用效果如下:
    半角:Hello World!
    全角:Hello World!
    半角:杜甫,你好! (逗号和叹号是半角)
    全角:杜甫,你好!

如何输出一串中文字符
把需要输出的字符放到一对引号中,做为一个字符串,再将字符串放到print后面的括号中做为参数,就可以输出这个字符串了。
输出时要注意查看字符串中的符号或非中文字符是全角还是半角,较好的方法是从题目中直接复制要输出的字符串,确保全部字符与要求完全相同。

编程要求
根据提示,在右侧编辑器补充代码,在两行中依次输出“李白,你好!”和“李白,你好!”。

测试说明
平台会对你编写的代码进行测试:

测试输入:

预期输出(有两行输出):

李白,你好!
李白,你好!

提示:
观察需要输出的字符串,只有字符串中全部字符(区分全角与半角)与题目要求输出的完全一样时,才能通过测试。

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137425935
# 在下面一行补充代码,在两行中依次输出“李白,你好!”和“李白,你好!”
print("李白,你好!")
print("李白,你好!")

第3关:向任何人问好

任务描述
本关任务:编写一个能在屏幕上向用户输入的人问好的程序。
用户输入一个人名xxx,在屏幕上输出“xxx,你好!”。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 输出多个对象

输入函数
语法:

user_name = input()  # 没有要求使用提示性文字时,括号里不加任何参数
# 接收用户输入的一个人名,命名为user_name,后面语句中用user_name引用这个人名

输出多个对象
将要输出的多个对象做为print()函数的参数,各对象间用半角逗号分隔。
输出后不显示参数间的逗号,多个对象之间用空格分隔。

print('a','b','c')

输出:

a b c!
print('杜甫', '你好!')    # 半角逗号作两个对象的分隔符,输出时不显示,输出时两个对象之间用一个空格分隔
print('杜甫', ',你好!')  # 第一个逗号半角分隔行,第二个逗号是全角,显示在中文语句中的符号,两个对象间仍有一个空格

输出:

杜甫 你好!
杜甫 ,你好!

编程要求
根据提示,在右侧编辑器补充代码,先用一条语句接收用户的输入,再在两行中依次输出“xxx 你好!”和“xxx ,你好!”。(“xxx”用用户输入的字符串替换)

测试说明
平台会对你编写的代码进行测试:

测试输入1:

杜甫

预期输出:

杜甫 你好!
杜甫 ,你好!

测试输入2:

李白

预期输出:

李白 你好!
李白 ,你好!

提示:

  1. 观察需要输出的字符串,只有字符串中全部字符(区分全角与半角)与题目要求输出的完全一样时,才能通过测试。
  2. 输出的多个对象间默认用一个空格分隔

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137425935
# 补充代码,第一行接收一个人名的输入,后面两行中依次输出“xxx 你好!”和“xxx ,你好!”
user_name = input()
print(user_name, '你好!')
print(user_name,',你好!')

第4关:格式化输出

任务描述
本关任务:编写一个能在屏幕上向用户输入的人问好的程序。
用户输入一个人名xxx,在屏幕上分两行输出“xxx,你好!”和“xxx,你好!”。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 格式化输出

输入函数
语法:

user_name = input()  
# 接收用户输入的一个人名,命名为user_name,后面语句中用user_name引用这个人名

格式化输出
大括号放到模板字符串中,可用于控制输出格式

'模板{}字符{}串{}'.format(输出对象1, 输出对象2,输出对象3)
f'模板{输出对象1}字符{输出对象2}{输出对象3}
user_name = '杜甫'
print('{}你好!'.format('杜甫'))  
print(f'{user_name}你好!')     # 作用与前一行相同,二选一
print('{},你好!'.format('杜甫'))  
print(f'{user_name},你好!')     # 作用与前一行相同,二选一

输出:

杜甫你好!
杜甫你好!
杜甫,你好!
杜甫,你好!

编程要求
根据提示,在右侧编辑器补充代码,接受一个人名的输入,然后在两行中依次输出“xxx你好!”和“xxx,你好!”。

测试说明
平台会对你编写的代码进行测试:

测试输入:

杜甫

预期输出:

杜甫你好!
杜甫,你好!

提示:

  1. 观察需要输出的字符串,只有字符串中全部字符(区分全角与半角)与题目要求输出的完全一样时,才能通过测试。
  2. 模板中可以是任意字符串
  3. str.format()中模板字符串中的占位符{}数量必须与format()中的参数数量完全一致
  4. f-string中每个占位符中必须有一个变量或值

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137425935
# 补充代码,第一行接收一个人名的输入,后面两行中依次输出“xxx你好!”和“xxx,你好!”
user_name =input()
print(f'{user_name}你好!')
print(f'{user_name},你好!')

第5关:输出多对象

任务描述
本关任务:编写一个能在屏幕上向用户输入的人问好的程序。
用户在两行中分别输入一个人名xxx和一个分隔符号,在屏幕上输出“xxx分隔符你好!”。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. sep参数指定多对象输出时的分隔符

输入函数
语法:

user_name = input()  
# 接收用户输入的一个人名,命名为user_name,后面语句中用user_name引用这个人名

sep参数指定多对象输出时的分隔符

print(objects1,objects2,objects3,...objectsn, sep='分隔符')
user_name = '杜甫'
print(user_name, '你好!', sep=':')  # user_name是变量名,执行此条语句时用值“杜甫”替换

输出:

杜甫:你好!
user_name = '杜甫'  # 本关此处需要改为用户输入
s = ','            # 表示分隔符,本关此处需要改为用户输入
print(user_name, '你好!', sep=s)  # sep参数的值s是变量名,不能加引号

输出:

杜甫,你好!

编程要求
根据提示,在右侧编辑器补充代码,在两行分别输入一个人名和一个用于分隔的符号,再输出“xxx分隔符你好!”。(xxx用输入的人名替换)

测试说明
平台会对你编写的代码进行测试:

测试输入:

杜甫
,

预期输出:

杜甫,你好!

测试输入:

杜甫
:

预期输出:

杜甫:你好!

提示:

  1. 程序必须能根据输入的不同的人名和分隔符给出正确的输出

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137425935
# 前两行分别输入人名和用于分隔的符号,第三行输出“xxx分隔符你好!”
user_name=input()
s = input()
print(user_name, '你好!', sep=s)

第6关: 同一行输出

任务描述
本关任务:编写一个能在同一行输出的程序。
用户输入一个符号,将程序中列表中的对象在同一行输出,每个对象后面跟着输出一个用户输入的符号。

相关知识
为了完成本关任务,你需要掌握:

  1. 输入函数
  2. 输出函数
  3. end参数指定输出结束符

输入函数
语法:

input([prompt])

输出函数
end='\n’表示输出后默认会输出一个换行符,使光标换到下一行,可修改end参数的值为其他字符,输出后输出end的参数值,并且光标不换行。

print(objects, end='\n')

end参数指定输出结束符
修改end值,可实现在同一行输出,输出一个对象后输出一个结束符号,光标不换行,多用于循环输出

for poet in ['李白', '白居易', '杜甫']:print(poet)  # 默认换行输出

输出:

李白
白居易
杜甫
end_mark = ','  # 用半角逗号做结束符
for poet in ['李白', '白居易', '杜甫']:print(poet, end=end_mark)  # 不换行,输出对象后再输出一个end参数里的符号

输出:

李白,白居易,杜甫, 

注意:杜甫后面还有一个逗号

编程要求
根据提示,在右侧编辑器补充代码,用户输入一个符号,在同一行输出列表中的对象,各对象后跟着输出一个用户输入的符号。

测试说明
平台会对你编写的代码进行测试:

测试输入:

预期输出:

李白,王维,王勃,白居易,杜甫,

提示:

  1. 程序必须能根据输入的不同的结束符给出正确的输出

开始你的任务吧,祝你成功!

参考代码

# 禁止转载,原文:https://blog.csdn.net/qq_45801887/article/details/137425935
# 在下面空行输入一个符号
sep = input() 
end_mark = sep
for poet in ['李白', '王维', '王勃', '白居易', '杜甫']:# 在下一行对齐此位置写输出语句,加参数使输出时不换行,每个输出后用第2行输入的符号结尾print(poet, end=end_mark)  

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

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

相关文章

js BOM模型常用方法梳理

1、Bom定义 BOM是操作浏览器的模型,主要是对浏览器的一些操作。 2、获取浏览器窗口的尺寸 window.innerHeight:获取窗口的高度。 window.innerWidth:湖区窗口的宽度,只在window浏览器下使用。 3、弹出层 alert:弹出框。 confirm:确认框。返回值有true …

数据治理实战——元数据管理

一、元数据概述 1.1 定义 描述数据的数据,本质还是数据。数据本身带有的技术属性与其在业务运行中的业务属性,称其为元数据,例如:表数据量,占用空间,字段信息,业务描述,负责人&…

计算机视觉实验五——图像分割

计算机视觉实验五——图像分割 一、实验目标二、实验内容1.了解图割操作,实现用户交互式分割,通过在一幅图像上为前景和背景提供一些标记或利用边界框选择一个包含前景的区域,实现分割①图片准备②代码③运行结果④代码说明 2.采用聚类法实现…

科目一笔记

扣分 目前只有 12 9 6 3 1分。 扣1分的 会车 不按照规定会车, 普倒掉(普通路上不按规定掉头,倒车) ​ 高速、城市快速路…以外的道路 普通路 ​ 校车…以外的道车 普通车 使用灯光 ​ 需要注意的是只有不按规定使用灯光&…

单调队列(C/C++)

引言: 单调队列和单调栈都是一种数据结构,应用十分广泛,在蓝桥杯、ICPC、CCPC等著名编程赛事都是重点的算法,今天博主将自己对单调栈与单调队列的理解以及刷题的经验,用一篇博客分享给大家,希望对大家有所…

在线拍卖系统|基于Springboot的在线拍卖系统设计与实现(源码+数据库+文档)

在线拍卖系统目录 基于Springboot的在线拍卖系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、前台: 2、后台 用户功能模块 5.2用户功能模块 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a…

使用脚本部署openstack平台

两台虚拟机,compute和controller 建议两台虚拟机都配置,内存4G,硬盘60G,网络要在虚拟机设置这里添加一个网络适配器,第一个是主机模式192.168.10.0,第二个是NAT模192.168.20.0, 可以在此处了解一…

Unity Standalone File Browser,Unity打开文件选择器

Unity Standalone File Browser,Unity打开文件选择器 下载地址:GitHub链接: https://github.com/gkngkc/UnityStandaloneFileBrowser简单的示例代码 using SFB; using System; using System.IO; using UnityEngine; using UnityEngine.UI;…

从三大层次学习企业架构框架TOGAF

目录 前言 掌握TOGAF的三个层次 层次1:怎么学? 层次2:怎么用? 层次3:怎么思? 结束语 前言 对于一名架构师来讲,如果说编程语言是知识库层次中的入门石,那么企业架构框架则相当…

CCF PTA 2022年7月C++研究生入学考试

【问题描述】 一年一度的研究生入学考试结束了,招生办的老师打算对所有的考生进行 成绩排名,从而确定复试的名单。排名的规则如下: (1)以入学考试的平均成绩 作为排名的依据(分数均为整数); (2)对于考生…

cesium加载倾斜影像数据(模拟雨、雪、雾、无人机飞行、测距、箭头标绘、电子围栏等)

实现效果如下: 功能菜单如下: 加载倾斜影像核心代码: var palaceTileset new Cesium.Cesium3DTileset({url: http://127.0.0.1:9002/tileset.json,//控制切片视角显示的数量,可调整性能maximumScreenSpaceError: 0.1,maximumNum…

问题:如何避免子组件传入相同对象时更新

场景 我有一个父组件,里面包含一个子组件,子组件传入了一个对象,假设对象是字面量。当我的父组件更新时,子组件也会更新。导致不必要的渲染。 一些尝试 1.通过使用React.memo包裹子组件,作用是父组件更新&#xff0…

python/pygame 挑战魂斗罗 笔记(三)

感觉最难的部分已经解决了,下面开始发射子弹。 一、建立ContraBullet.py文件,Bullit类: 1、设定子弹速度 Config.py中设定子弹移动速度为常量Constant.BULLET_SPEED 8。 2、载入子弹图片: 图片也是6张,子弹发出后…

【MySQL面试题pro版-8】

MySQL是一个关系型数据库管理系统,由瑞典 MySQL AB 公司开发,属于 Oracle 旗下产品。MySQL是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的RDBMS (Relational Database Management System,关系数据…

Swagger3 使用示例

Swagger3 使用示例 GET 请求,传递 query-string 参数 Operation(summary "GET 请求", description "GET 请求传递 query-string 参数", tags {"用户管理"}) GetMapping(value "/get-query-string", produces "…

2236: 【数学】 回文质数

题目描述 因为151既是一个质数又是一个回文数(从左到右和从右到左是看一样的)&#xff0c;所以 151 是回文质数。 写一个程序来找出范围[a,b](5 < a < b < 10,000,000)间的所有回文质数; 输入 二个整数 a 和 b . 输出 输出一个回文质数的列表&#xff0c;一行一…

成为程序员后你都明白了什么?

成为程序员后你都明白了什么&#xff1f; 自成为一名程序员以来&#xff0c;我的职业生涯就如同一段充满挑战与收获的旅程。在这段长达七年的时光里&#xff0c;我从一名初出茅庐的新手&#xff0c;历经多次角色转换&#xff0c;直至现在成为一家创业公司的技术负责人&#xf…

OceanBase数据库日常运维快速上手

这里为大家汇总了从租户创建、连接数据库&#xff0c;到数据库的备份、归档、资源配置调整等&#xff0c;在OceanBase数据库日常运维中的操作指南。 创建租户 方法一&#xff1a;通过OCP 创建 确认可分配资源 想要了解具体可分配的内存量&#xff0c;可以通过【资源管理】功…

Unity 对APK签名

关键代码 PS D:\UnityProject\YueJie> jarsigner -verbose -keystore D:\UnityProject\YueJie\user.keystore -signedjar D:\UnityProject\YueJie\meizuemptyapk-release-signed.apk D:\UnityProject\YueJie\MeizuEmpty-release-unsigned.apk 1 示例 # jarsigner的命令格…

【C++从练气到飞升】08---模板

&#x1f388;个人主页&#xff1a;库库的里昂 ✨收录专栏&#xff1a;C从练气到飞升 &#x1f389;鸟欲高飞先振翅&#xff0c;人求上进先读书。 目录 一、泛型编程 什么是泛型编程: 二、函数模板 1. 函数模板概念 2. 函数模板格式 3. 函数模板的原理 4. 函数模板的实例…