Python入门之基础语法

第1关:行与缩进

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

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

if True:
    print("true")
    print("true")
else:
 print("false")
 print("false");
上面程序的 if 部分和 else 部分缩进不相同,但是在各自的代码块内缩进是相同的,所以是正确的程序。

if True:
   print("true")
  print("true")
这个程序的 if 部分缩进不相同,所以是错误的程序。

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

print("hello")
print("world");
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 等差不多:

第一个字符必须是字母表中的字母或下划线 _ ;
标识符的其他的部分,由字母、数字和下划线组成;
标识符对大小写敏感;
标识符不能与保留字相同。
比如:

num1 = 1
float1 = 0.5
true = True #这个 true 虽然字面上的意思与值“True”相同,但 python 对大小写敏感,所以也是正确的
str1 = "hello"
这些都是正确的标识符。

而:

1value = 1 #开头不能是数字
value0.1 = 0.1 #标识符中间只能是数字,字母,下划线
if = True #与保留字if重名
都是不正确的标识符。

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

import keyword
print(keyword.kwlist)
输出:

['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__':#错误1str1 = "string"print(str1)#错误2l024 = 1024print(l024)#错误3float_1024 = 1.024print(float_1024)#错误3false = Falseprint(false)#在此处输出保留关键字print(keyword.kwlist)print("end")

第3关:注释

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

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

Python 中单行注释以 # 开头:

#这是一个注释1
print("python") #这是一个注释2
#print("python2")
运行得到的结果是:
python

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

#使用多个#
#作注释
'''
用三个单引号
作注释
'''
"""
用三个双引号
作注释
"""
编程要求
根据提示,对右侧编辑器中,部分代码添加注释或者取消注释,使其输出结果与测试说明中的结果一致。

测试说明
处理后的代码应该输出:
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()的括号内,就可以输出:

print("hello world")
得到的结果是:hello world

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

print("hello","world")
得到的结果:hello world

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

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

print("100 + 200 = %d" % 300) #左边的%d被替换成右边的300
print("A的小写是%s" % "a") #左边的%s被替换成右边的a
得到的结果是:

100 + 200 = 300
A的小写是a

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

print("%d + %d = %d" % (100,200,300))
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="":

print("hello" , end="")
print("world" , end="")
得到的结果:helloworld

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

str1 = input()
print("输入的是%s" % str1)
如果输入hello然后回车,则输出:输入的是hello。

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

str1=input("请输入:")
print("输入的是%s" % str1)
运行之后,会先显示请输入:,输入数据hello之后回车,则会得到输出:输入的是hello,控制台上显示的全部内容为:

请输入:hello
输入的是hello

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

转换成整数,使用int()函数:num1 = int(str)
转换成小数,使用float()函数:f1 = float(str)
str = input()
num1 = int(str)
f1 = float(str)
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:

a = 100
b = 200
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/bicheng/58590.shtml

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

相关文章

WebSocket与Socket

一、定义与用途 Socket Socket(套接字)是一个抽象层,用于在网络上执行进程间的通信。它为应用程序提供了发送和接收数据的机制,通过IP和端口号来标识网络中唯一的位置。Socket可以使用TCP进行面向连接的可靠通信,也可以…

[Python学习日记-54] Python 中的日志模块 —— logging

[Python学习日记-54] Python 中的日志模块 —— logging 简介 基础用法 日志写入到文件 自定义日志格式 日志同时输出到屏幕和写入到文件 简介 在程序的运行过程中会执行很多操作或者进行很多的交互,也有的时候可能你开发出来的网站会遭到黑客的攻击&#xff0…

10.30Python随堂考试

1.(12分)使用Python的NumPy库,创建一个形状为(4,4)的二维数组,并且初始化所有元素为其行索引与列索引之和。 import numpy as np arr np.array([[i j for j in range(4)] for i in range(4)]) print(arr)2.(8分&…

C++关键字noexcept应用及案例

文章目录 使用场景:注意事项: noexcept在C中的应用和重要性:与标准库的交互与异常安全相关的编程模式与C标准的关系与性能的关系示例代码 综合案例扩展后的代码新增功能解释异常安全性能优化 在C中, noexcept是一个关键字&#x…

STM32F103HAL库实现低功耗(睡眠模式、停止模式和待机模式)

STM32F103HAL库实现低功耗(睡眠模式、停止模式和待机模式) 1. STM32电源结构2. 电源管理器2.1 上电复位和掉电复位2.2 可编辑电压监测器(PVD) 3. 低功耗模式介绍3.1 睡眠模式3.2 停止模式3.3 待机模式 4. 低功耗相关寄存器5. 低功…

Windows: 如何实现CLIPTokenizer.from_pretrained`本地加载`stable-diffusion-2-1-base`

参考:https://blog.csdn.net/qq_38423499/article/details/137158458 https://github.com/VinAIResearch/Anti-DreamBooth?tabreadme-ov-file 联网下载没有问题: import osos.environ["HF_ENDPOINT"] "https://hf-mirror.com" i…

从0学习React(9)

代码解析 const changeOrg (orgId) > {queryData.orgId orgId;delete queryData.deviceClassifyId;setQueryData(queryData);actionRef.current?.reset();loadTreeData(orgId); };1. const changeOrg (orgId) > { ... }; 这是一个箭头函数(arrow functi…

【vue】14.插槽:构建可复用组件的关键

今天看代码的时候碰到了插槽&#xff0c;有些看不懂&#xff0c;所以写下这篇文章&#xff0c;系统地梳理一下关于插槽的内容&#xff0c;也希望给大家带来一些帮助。 // 我碰到的插槽长这样 <template #default"scope">... </template> 一.什么是插槽…

阿里巴巴店铺商品API返回值中的商品分类与筛选条件

阿里巴巴店铺商品API返回值中的商品分类与筛选条件对于电商平台的运营和用户购物体验至关重要。以下是对这两个方面的详细解析&#xff1a; 一、商品分类 商品分类是指将商品按照其属性、用途、材质等因素进行归类&#xff0c;以便商家和用户更好地管理和查找商品。在阿里巴巴…

Electron 是一个用于构建跨平台桌面应用程序的开源框架

Electron 是一个用于构建跨平台桌面应用程序的开源框架。它结合了 Chromium&#xff08;用于网页渲染的浏览器引擎&#xff09;和 Node.js&#xff08;用于后端开发的 JavaScript 运行时&#xff09;&#xff0c;允许开发者使用熟悉的 HTML、CSS 和 JavaScript 技术来开发桌面应…

影刀RPA与Python作为爬虫的对比

1.概要 RPA&#xff08;Robotic Process Automation&#xff0c;机器人流程自动化&#xff09;是一种业务流程自动化技术&#xff0c;它通过软件机器人或“虚拟劳动力”来模拟和集成人类用户与数字系统之间的交互。RPA工具可以自动执行重复性的、基于规则的任务&#xff0c;这…

camera和lidar外参标定

雷达和相机的外参标定&#xff08;外部参数标定&#xff09;指的是确定两者之间的旋转和平移关系&#xff0c;使得它们的坐标系可以对齐。 文章目录 无目标标定livox_camera_calibdirect_visual_lidar_calibration 有目标标定velo2cam_calibration 无目标标定 livox_camera_ca…

如何帮助8502万残障人士驶出「孤岛」?

【潮汐商业评论/原创】 对于残障人士来说&#xff0c;“出行”无异于从一座孤岛跳到另一座孤岛。 正常人乘坐的出租车&#xff0c;对于行动不便的乘客来说&#xff0c;或如同“受难场”&#xff1a;从下轮椅到坐上出租车后座的咫尺距离&#xff0c;尽管只需迈出几步&#xff…

数据结构和算法-动态规划(3)-经典问题

动态规划常见问题 打家劫舍 题目 [力扣198] 198. 打家劫舍 - 力扣&#xff08;LeetCode&#xff09; 题目描述 你是一个专业的小偷&#xff0c;计划偷窃沿街的房屋。每间房内都藏有一定的现金&#xff0c;影响你偷窃的唯一制约因素就是相邻的房屋装有相互连通的防盗系统&…

深入理解Redis的四种模式

Redis是一个内存数据存储系统&#xff0c;支持多种不同的部署模式。以下是Redis的四种主要部署模式。 1、单机模式 单机模式是最简单的部署模式&#xff0c;Redis将数据存储在单个节点上。这个节点包括一个Redis进程和一个持久化存储。单机模式非常适合小型应用程序或者开发和…

[NeetCode 150] Foreign Dictionary

Foreign Dictionary There is a foreign language which uses the latin alphabet, but the order among letters is not “a”, “b”, “c” … “z” as in English. You receive a list of non-empty strings words from the dictionary, where the words are sorted lex…

Flutter实战短视频课程

1、课程导学 一套代研运行多蜡 体州一致&#xff0c;目胜能优昇 未来大趋势 不改交原生项目的基础上&#xff0c;扩展Flutter能力 Flutter原生灵话切涣 0入侵 最简单、最通用 最新Flutter 3,x新特性讲解 大量flutter官方组件和api学习 最常用的第三方库使用及原理解析 自研组…

消息队列-Rabbitmq(消息发送,消息接收)

将来我们开发业务功能的时候&#xff0c;肯定不会在控制台收发消息&#xff0c;而是应该基于编程的方式。由于RabbitMQ采用了AMQP协议&#xff0c;因此它具备跨语言的特性。任何语言只要遵循AMQP协议收发消息&#xff0c;都可以与RabbitMQ交互。并且RabbitMQ官方也提供了各种不…

编程的魅力与价值

编程&#xff0c;这一门融合了逻辑、创造与无限可能的技艺&#xff0c;早已超越了单纯的技术范畴&#xff0c;它成为了连接现实与虚拟、过去与未来的桥梁。在这个数字化时代&#xff0c;编程不仅是程序员的职业技能&#xff0c;更是许多人探索世界、实现梦想的钥匙。本文将从编…

QT相机连接与拍照

先看效果 编辑:已添加虚拟键盘辅助输入,添加二维码识别,用的QZxing 初始化 auto mainLayout = new QHBoxLayout(this);m_viewfinder = new QCameraViewfinder(this);m_viewfinder->setStyleSheet("border-radius: 20px;background-color:rgb(43,48,70)");mainL…