[头歌Python实验]Python入门之基础语法

目录

第1关:行与缩进

第2关:标识符与保留字

第3关:注释

第4关:输入输出 


如果对你有帮助的话,不妨点赞收藏关注评论走一波吧,爱你么么哒吗😘💖💖💖

第1关:行与缩进

任务描述

本关任务:改正代码中不正确的缩进,使其能够正常编译,并输出正确的结果。

相关知识

缩进

Python 与 C/C++、Java 这些 C 类语言不同,Python 使用缩进来表示代码块,缩进的空格数量可以由个人习惯决定,但同一个代码块的缩进空格数必须相同。

  1. if True:

  2. print("true")

  3. print("true")

  4. else:

  5. print("false")

  6. print("false");

上面程序的 if 部分和 else 部分缩进不相同,但是在各自的代码块内缩进是相同的,所以是正确的程序。

  1. if True:

  2. print("true")

  3. print("true")

这个程序的 if 部分缩进不相同,所以是错误的程序。

多行语句

Python 的代码一般是一行一条语句,语句之后的分号 ; 可加可不加。但如果要在一行中写多条语句,则需要用分号 ; 隔开每条语句。

  1. print("hello")

  2. print("world");

  3. print("hello");print("world")

以上三行(四条语句)都是正确的。

编程要求

根据提示,改正右侧编辑器中代码的缩进错误,使其能够正确运行,并输出结果。

测试说明

改正后可得到以下输出: wrong1 这里有一个错误缩进 wrong2 wrong3 hello world


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

#有错误的函数1
def wrong1():print("wrong1")print("这里有一个错误缩进")#有错误的函数2
def wrong2():print("wrong2")if False:print("这个不应该输出")print("这个也不应该输出")#有错误的函数3
def wrong3():print("wrong3") print("hello world")#这里是调用三个函数的代码
#不要修改
if __name__ == '__main__':wrong1()wrong2()wrong3()

第2关:标识符与保留字

任务描述

本关任务:改正程序中的错误,并输出 Python3 的所有保留字。

相关知识

标识符

标识符就是程序中,使用的各种名称,例如:变量名、常量名、类名等等。 在 Python 中,对标识符格式的要求与 C/C++、Java 等差不多:

  • 第一个字符必须是字母表中的字母或下划线 _ ;

  • 标识符的其他的部分,由字母、数字和下划线组成;

  • 标识符对大小写敏感;

  • 标识符不能与保留字相同。

比如:

  1. num1 = 1

  2. float1 = 0.5

  3. true = True #这个 true 虽然字面上的意思与值“True”相同,但 python 对大小写敏感,所以也是正确的

  4. str1 = "hello"

这些都是正确的标识符。

而:

  1. 1value = 1 #开头不能是数字

  2. value0.1 = 0.1 #标识符中间只能是数字,字母,下划线

  3. if = True #与保留字if重名

都是不正确的标识符。

保留字

保留字即关键字,是 Python 语言中内部使用的单词,代表一定语义。例如:and、class、if、else 等。保留字不能作为标识符,用在变量名、常量名、类名等地方。 Python 的标准库提供了一个 keyword 模块,可以输出当前版本的所有关键字:

  1. import keyword

  2. print(keyword.kwlist)

输出:

  1. ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

编程要求

根据提示,改正右侧编辑器的代码,并输出 Python3 的所有保留字。

测试说明

改正程序后会得到以下输出: string 1024 1.024 False ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield'] end


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

import keywordif __name__ == '__main__':#错误1_str1 = "string"print(_str1)#错误2_1024 = 1024print(_1024)#错误3float_1024 = 1.024print(float_1024)#错误3_False = Falseprint(_False)#在此处输出保留关键字print(keyword.kwlist);print("end")

第3关:注释

任务描述

本关任务:修改程序,得到正确的结果。

相关知识

注释是对程序代码的说明,一般是给程序员理解代码使用,不作为程序一部分。

Python 中单行注释以 # 开头:

  1. #这是一个注释1

  2. print("python") #这是一个注释2

  3. #print("python2")

运行得到的结果是: python

多行注释可以使用多个#,也可以用一对'''(三个单引号)或者"""(三个双引号)包裹要注释的内容:

  1. #使用多个#

  2. #作注释

  3. '''

  4. 用三个单引号

  5. 作注释

  6. '''

  7. """

  8. 用三个双引号

  9. 作注释

  10. """

编程要求

根据提示,对右侧编辑器中,部分代码添加注释或者取消注释,使其输出结果与测试说明中的结果一致。

测试说明

处理后的代码应该输出: 1 3 5 hello world 3 4


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

if __name__ == '__main__':#以下是要修改的代码print(1)#print(2)print(3)#print(4)print(5)#print(6)print("hello world")"""print("这个不应该输出")"""'''print(1)print(2)'''print(3)print(4)

第4关:输入输出 

任务描述

本关任务:编写一个对用户输入,进行加减乘除四则运算的程序。

相关知识

输出

print的函数的基本使用,在之前的关卡中,已经出现过多次,将要输出的内容放在print()的括号内,就可以输出:

  1. print("hello world")

得到的结果是:hello world

print函数可以同时输出多个内容,只需要将它一起放在print的括号内,并用逗号隔开:

  1. print("hello","world")

得到的结果:hello world

值得注意的是,同时输出的多个内容之间,会有空格隔开。

类似于 C/C++ 的printf,Python 的print也能实现格式化输出,方法是使用%操作符,它会将左边的字符串当做格式字符串,将右边的参数代入格式字符串:

  1. print("100 + 200 = %d" % 300) #左边的%d被替换成右边的300

  2. print("A的小写是%s" % "a") #左边的%s被替换成右边的a

得到的结果是:

100 + 200 = 300 A的小写是a

如果要带入多个参数,则需要用()包裹代入的多个参数,参数与参数之间用逗号隔开,参数的顺序应该对应格式字符串中的顺序

  1. print("%d + %d = %d" % (100,200,300))

  2. print("%s %s" % ("world","hello"))

得到的结果是:

100 + 200 = 300 world hello

格式字符串中,不同占位符的含义:

%s: 作为字符串 %d: 作为有符号十进制整数 %u: 作为无符号十进制整数 %o: 作为无符号八进制整数 %x: 作为无符号十六进制整数,a~f采用小写形式 %X: 作为无符号十六进制整数,A~F采用大写形式 %f: 作为浮点数 %e,%E: 作为浮点数,使用科学计数法 %g,%G: 作为浮点数,使用最低有效数位

更多用法可以在网络上自行搜索。

注意: print函数输出数据后会换行,如果不想换行,需要指定end=""

  1. print("hello" , end="")

  2. print("world" , end="")

得到的结果:helloworld

输入

使用input函数可以获得用户输入,在控制台窗口上,输入的一行的字符串,使用变量 = input()的形式将其赋值给一个变量:

  1. str1 = input()

  2. print("输入的是%s" % str1)

如果输入hello然后回车,则输出:输入的是hello

还可以在input()的括号内,加入一些提示信息:

  1. str1=input("请输入:")

  2. print("输入的是%s" % str1)

运行之后,会先显示请输入:,输入数据hello之后回车,则会得到输出:输入的是hello,控制台上显示的全部内容为:

请输入:hello 输入的是hello

字符串转换

input函数接收的是用户输入的字符串,此时还不能作为整数或者小数进行数学运算,需要使用函数将字符串转换成想要的类型。

  • 转换成整数,使用int()函数:num1 = int(str)

  • 转换成小数,使用float()函数:f1 = float(str)

  1. str = input()

  2. num1 = int(str)

  3. f1 = float(str)

  4. print("整数%d,小数%f" % (num1,f1))

如果输入10,得到的输出是:整数10,小数10.000000

编程要求

根据提示,在右侧编辑器 Begin-End 区间补充代码,接收用户输入的两个数 a 和 b,对其进行加减乘除四则运算,通过print函数打印四次运算结果,使结果输出形式与预期输出保持一致。

测试说明

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

测试输入: 100 200

预期输出: 100 + 200 = 300 100 - 200 = -100 100 * 200 = 20000 100 / 200 = 0.500000

测试输入: 5 2

预期输出: 5 + 2 = 7 5 - 2 = 3 5 * 2 = 10 5 / 2 = 2.500000

提示:

Python 中对两个数(整数,浮点数)进行除法运算后,得到的结果是浮点数,所以输出需要使用%f:

  1. a = 100

  2. b = 200

  3. print("%d / %d = %f" % (a,b,a / b))#第三个占位符使用的是%f,而不是像前两个那样使用%d

得到的结果:100 / 200 = 0.500000


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

if __name__ == "__main__":a = int(input())b = int(input())
# ********** Begin ********** #print("%d + %d = %d" % (a,b,a+b))print("%d - %d = %d" % (a,b,a-b))print("%d * %d = %d" % (a,b,a*b))print("%d / %d = %f" % (a,b,a/b))# ********** End ********** #

 

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

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

相关文章

逆向爬虫进阶实战:突破反爬虫机制,实现数据抓取

文章目录 一、引言二、逆向爬虫进阶技巧三、逆向爬虫进阶实战代码片段四、总结与展望好书推荐内容简介作者简介前言节选 一、引言 随着网络技术的发展,网站为了保护自己的数据和资源,纷纷采用了各种反爬虫机制。然而,逆向爬虫技术的出现&…

【Python百宝箱】漫游Python数据可视化宇宙:pyspark、dash、streamlit、matplotlib、seaborn全景式导览

Python数据可视化大比拼:从大数据处理到交互式Web应用 前言 在当今数字时代,数据可视化是解释和传达信息的不可或缺的工具之一。本文将深入探讨Python中流行的数据可视化库,从大数据处理到交互式Web应用,为读者提供全面的了解和…

控乐屋品牌|智汇恒星全宅智能空间万物互联,千亿蓝海蓄势待发

随着5G、大数据、云计算、物联网等技术的发展,智能化正覆盖人们生活的方方面面,全屋智能的出现为“一键式”智能家居生活享受提供无限可能。近年来智能家居行业总体规模增长迅速,数据显示,2022年中国智能家居行业市场规模约为6200…

Redis滚动分页的使用

Feed流 关注推送也叫Feed流。通过无限下拉刷新获取新的信息。 Feed流产品常见有两种模式: Timeline: 不做内容筛选,简单的按照内容发布时间排序,常用于好友或关注。例如朋友圈 优点:信息全面,不会有缺失。并且实现也…

2023五岳杯量子计算挑战赛APMCM亚太地区

问题一要求在特定区域内部署两个边缘服务器,以便根据计算需求分布覆盖最大的计算需求。每个边缘服务器都有一个覆盖半径为1。目标是确定两个边缘服务器的位置,以覆盖最大的计算需求。假设边缘服务器的位置位于网格的中心,每个网格内的计算需求…

我们为什么那么关注 Java 中的 String Template ,Java 21 特性

本心、输入输出、结果 文章目录 我们为什么那么关注 Java 中的 String Template ,Java 21 特性前言String TemplateString Template 有什么好处字符串连接 – 一个常见但无趣且容易出错的任务jetbrains IDEA 2023.2 版本及以上对于 String Template 的支持字符串模板…

试编写算法将带头结点的单链表就地逆置(就地是指辅助空间复杂度为 O(0))。

题目描述:试编写算法将带头结点的单链表就地逆置(就地是指辅助空间复杂度为 O(0)。 分析: 将单链表就地逆置可以考虑使用头插法。 LinkList Reverse(LinkList L){LNode *p L->next;LNode *r;L->next NULL;while(p){r p->next;p…

redis中使用pipeline

在操作数据库时,为了加快程序的执行速度,在新增或更新数据时,可以通过批量提交的方式来减少应用和数据库间的传输次数;在redis中也有这样的技术实现批量处理,也就是管道——Pipeline。它也是通过批量提交数据的方式来实…

FPS和SFTP的速度哪个更快?区别在哪里?

在互联网时代,我们频繁需要传输大文件,如视频、音乐、图片和文档等。这些文件不仅占用大量空间,而且传输时间长。确保传输过程的安全性和稳定性,以防文件被窃取或损坏成为重要考虑因素。在选择传输方式时,FPS和SFTP是两…

力扣-435.无重叠空间

利用快排,对数组右边界进行排序。 用一个变量记录区间的分割点,然后用这个分割点去和下一个区间做比较,如果没有重叠,更新右边界,没有重叠的区间个数加一。 然后更新右边界,继续进行比较。 最后用总区间…

Databend 如何利用 GPT-4 进行质量保证

背景 在数据库行业,质量是核心要素。 Databend 的应用场景广泛,特别是在金融相关领域,其查询结果的准确性对用户至关重要。因此,在快速迭代的过程中,如何确保产品质量,成为我们面临的重大挑战。 随着 Da…

leaflet:经纬度坐标转为地址,点击鼠标显示地址信息(137)

第137个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+leaflet中将经纬度坐标转化为地址,点击鼠标显示某地的地址信息 。主要利用mapbox的api将坐标转化为地址,然后在固定的位置显示出来。 直接复制下面的 vue+leaflet源代码,操作2分钟即可运行实现效果 文章目录 示…

Springboot 项目关于版本升级到 3.x ,JDK升级到17的相关问题

由于spring 停止对2.x 版本的维护,以及 jdk 频繁发布等客观因素,现需要对已有springboot 工程做一次全面升级;已因对市面上第三方等依赖库的兼容问题; 现有工程使用哥技术栈是版本: freemarker :2.3.32 spr…

Segment Anything--SAM框架(二)

文章目录 prologuepaper && codeImage encoderPrompt encoderLightweight mask decoderMaking the model ambiguity-aware prologue 没什么事,写一写SAM的paper中关于模型框架的部分和实际代码部分。 paper && code SAM有三个组件,如图…

要求CHATGPT高质量回答的艺术:提示工程技术的完整指南—第 9 章:种子词提示

要求CHATGPT高质量回答的艺术:提示工程技术的完整指南—第 9 章:种子词提示 种子词提示是一种通过提供特定种子词或短语来控制 ChatGPT 输出的技术。 种子词提示符的提示公式是种子词或短语,然后是指令 “请根据以下种子词生成文本”。 示…

【PTA题目】7-31 前世档案 分数 20

7-31 前世档案 分数 20 全屏浏览题目 切换布局 作者 陈越 单位 浙江大学 网络世界中时常会遇到这类滑稽的算命小程序,实现原理很简单,随便设计几个问题,根据玩家对每个问题的回答选择一条判断树中的路径(如下图所示&#xff09…

【若依系列】1.项目修改成自己包名并启动服务

项目下载地址: 分离版本 https://gitee.com/y_project/RuoYi-Vue 修改工具下载 https://gitee.com/lpf_project/common-tools 相关截图: 1.项目结构: 2.修改包名工具: 工具截图,根据对应提示自定义修改即可&#x…

【JS】检索树结构,并返回结果节点的路径与子节点

【JS】检索树结构,并返回结果节点的路径与子节点 需求代码效果展示 需求 一个树结构,需要添加条件检索功能,检索结果依然是一个树结构,包含所有的符合要求的节点,以及他们到根节点的路径,与他们的子节点 …

Spring Boot基础

文章目录 一、Spring Boot1. Spring的缺点2. Spring Boot 改变了什么3. Spring Boot项目搭建4. 热部署5. 依赖管理6. 代码生成器7. 日志8. 日期转换9. 接口文档10. 打包部署11. 自动装配 一、Spring Boot 1. Spring的缺点 在Spring Boot出现以前,使用Spring框架的…

二叉树OJ题之三

哈喽伙伴们,有一段时间没更新博客了,主要是这段时间要准备学校的期末考试,所以没有把部分时间分给博客,今天我们一起去接着看二叉树递归有关的OJ题,今天我们要学习的是 判断相同的树,力扣题目--100 &…