c 程序中的注释相当于空白字符_Python专题 | (三)注释、变量与输出

小伙伴们,大家好呀,欢迎回到我们的python专题。前两篇文章已经把编程简单的知识和大家介绍过了,今天我们正式开始学习python语法。
第一个python程序我们在第一篇文章中介绍pycharm的安装时曾给大家展示过这样的一段代码:
print("hello world")
这段代码的输出结果是命令行展示“hello world”这句话,为了之后知识点的讲解,Mark把它进行一下改造,我们今天要介绍的几个知识点都包含其中。
a="hello world" # 用一个变量存储字符串hello worldprint(a) # 打印该字符串

一、注释——程序的说明

注释,就是对程序的说明。程序运行时,注释会自动被忽略掉,不会影响程序的运行。

上面这段程序中的中文,就是程序的注释。注释是每个程序不可缺少的部分。大家一定不要因为注释很麻烦就不写注释,只有几行代码的小程序这样做无关紧要,但是随着代码量增加,程序背后的逻辑越来越复杂,没有注释可能会很难理解,给程序的修改和扩展带来极大的困难。

注释也不是越多越好,要在正确的位置进行正确而简要的注释(示例程序的注释就有点多余,这里作为演示用)。这一点随着大家编程经验的增加就能逐渐有自己的感悟,能明白哪里应该有什么样的注释。在编程前期,写下变量、函数(之后会讲到)和自己掌握不太清晰的语句的注释就可以了。

python注释的写法有很多种,我们分为两种情况介绍:1、单行注释

单行注释一般使用“#”号开头,表示注释开始,#号之后的都是注释,在这里写的所有语句均不会被计算机识别和执行。#号的作用范围仅为当前行,想要将注释写到下一行时,可以在前面继续添加#号。

a="hello" # 我是第一行注释# 想继续在第二行进行注释,可以在句首再添加一个#号
2、多行注释

有时候我们要写的注释比较多或者是一段而不是某一句代码的执行逻辑,就可以使用多行注释。多行注释一般使用3个单引号或是3个双引号,注意要使用英文输入。这里使用pycharm演示。

713b6b9d768787a2e558b50375656034.png

可以看到程序正常执行,两段注释都没有被计算机识别(Mark更改了pycharm的配色方案,因此看上去颜色不同)。
讲完了注释,我们来看这个程序的第一句(Mark把注释去掉啦)
a="hello world"

通过注释,这句话的意思是用一个变量存储字符串“hello world”。那么,什么是字符串?什么又是变量?


二、数据类型——数据的分类

这里提到的字符串,是编程中数据类型的一种。在python中,数据被分为很多的类型。

生活中,我们把1、2、3、4叫做数字,python认为它们是int类型(有符号整数类型);0.7、3.14、7.0是带有小数部分的数字,很像在整数周围上下浮动,因此python认为它们是float类型(浮点数类型);还有一部分数字是虚数,不属于实数范围,python把它们称之为complex类型(复数类型);“你好”、“1+1=2”、“hello”属于由字符组成的句子,python认为它们是str类型(字符串类型)

001a5cb8921504b7df606ecc625ebd3c.png

注意,有时数字也有可能是字符串类型,字符串类型最大的特点是使用单引号或者双引号括起来,当看到单引号或者双引号括起来的数据,很有可能就是字符串类型的数据。至于用什么编程方法查看数据类型,讲解完输出函数print()会给大家介绍的~

还有一种数据类型生活中不太常见,但是编程中经常会用到,就是bool类型(布尔类型),布尔类型一般用来表示一种对立关系,只有 True 和 False 两种情况。“对”与“错”、“是”与“否”,都可以使用bool类型来表达。

这种类型将会在讲解选择结构时进行讲解,现在知道即可。

除了以上的数据类型,python中还有tuple类型(元组类型)、list类型(列表类型)、dict类型(字典类型),这些不属于基础类型,在之后的文章中会讲解到。


三、变量——带标签的盒子

说完了数据类型,我们来看看变量。

我们可以把变量想象成一个带着标签的盒子。这个盒子内部装的就是程序要处理的数据,盒子的标签就是变量名,通过这个标签我们可以知道这个盒子里面装了什么数据。

9b0f690f110774e2a0b716625ddf7dcf.png

通过示例不难看出,变量的定义方式:

【变量名】=【存储的数据】

上一篇文章提到过python是一种动态语言,因此在进行变量定义时不需要指定变量类型。

这里的等号与数学中的不同,编程中使用一个等号表示赋值,即把等号右边的东西赋值给等号左边的变量名指代的变量。编程中相等的概念使用2个等号表示。

a = 2 # 表示将数字2赋值给变量aa == 2 # 表示变量a表示的数据与2相等

有了变量,我们就能非常方便的操作数据。只需要调用变量,就能使用“盒子”里的数据。调用变量只需要使用变量名即可。

1、变量命名规则

变量的出现,极大的方便了程序对于数据的访问,只需要使用变量名,就能轻松的使用“盒子”里的数据。但是变量命名也是有自己的规则的,并不是随便整个名字就行的。

变量命名有三大规则:
  1. 变量名只能使用字母、数字、下划线,字母区分大小写。

  2. 命名时必须使用字母或者下划线开头。

  3. 不能使用python中的关键字。

注意,变量是区分大小写的,即name、Name、NAME都是不同的变量,在编写时要注意这一点。

关键字是指python中已经使用到的名字,python提供一些内置的函数,这些函数的名字就是关键字,如果使用了,python不能识别是要使用变量还是要使用内置的某些函数。具体关键字如下:

4aafabd8e0bbb3f9303a4a83ba9cbd6d.png

这些关键字不需要背诵,随着编程会慢慢熟悉。当我们不确定某个词是否为关键字时,直接在pycharm中使用,输入完后pycharm就会出现错误提示,即可确定使用的词是否为关键字。

也可以使用以下语句得到所有关键字:
import keywordprint(keyword.kwlist)
在编程中,对变量命名有三种方法
  • 大驼峰命名法——全部单词的首字母大写
  • 小驼峰命名法——第一个单词首字母小写其余单词首字母大写
  • 下划线命名法——单词之间使用下划线连接

无论变量如何命名,一定要做到“见名知意”,千万不可使用非常简单随便的a、b、c或者A、B、C命名。简单程序无关紧要,复杂程序会非常难修改和维护(示例中的变量a,,就是一种不可取的命名方式,这里仅作为演示)。


讲完了变量,我们继续学习一下输出函数print(),示例程序的第二句就使用了这句话。

print(a) # 打印字符串a

python的输出分为两种,一种是直接输出,直接使用print()函数,括号内输入要输出的变量或者字符。

第二种是格式化输出。格式化输出有两种方式,第一种是使用%占位,之后填入想输出的数据,第二种是使用format()函数进行格式化输出。

e0d54060a84017a9d95ea2b8ecf1c222.png

例如,我们要输出“我是外星人,来自火星。”这句话。

bcf1dc1c404c6b7122d2da6072472965.png

直接输出的局限性很大,使用的几率也明显小于另外两种。第二种使用%占位的方式,在输出句子中,要使用对应的方式。

符号格式
%c格式化字符及其ASCII码
%s格式化字符串
%d(%i不常用)格式化整型
%f格式化浮点数
%u或%U格式化无符号整型
%o格式化无符号八进制数
%x或%X格式化无符号十六进制数

%e或%E

用科学计数法格式化浮点数
%g或%G对%f或%e的简写
%p用十六进制格式化变量地址

看上去有点多,常用的就是前四个(标红的),例子中用到了%s。

另一种format()函数使用时,输出句子想更改的位置使用大括号({})进行标注,在输出的句子之后加上点号(.)之后写上format(),括号里填的是对应的输出数据,当有多个空位时,会自动对号入座。这种方式不需要指定数据类型。


讲完了输出函数print(),我们最后再来看看如何查看数据的类型。python提供了函数type(),它能够返回变量存储的数据的类型,结合输出函数print(),就能查看变量的类型了。

b211c8afb04efb665f5c3961bb07b651.png

至于类型前面的class,表示“类”,会在之后的面向对象特性中讲解。这里先不用在意啦。


总结

第三篇文章就先讲到这里,这次我们学习了注释、数据类型、变量的定义及命名、输出函数print()及格式化输出,最后讲解了type()函数的使用。


写在最后

编程没有捷径,也不是通过看就能学会的,一定要多练习,多应用,这样才能真正掌握语法知识点。问题千千万,只有真正理解才能解决问题,死记硬背是没有用的。

Mark开始更新了,有问题的话欢迎给Mark留言哦~

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

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

相关文章

mysql添加timestamp有什么用_mysql中timestamp的使用

mysql中timestamp的使用mysql> CREATE TABLE t1 (-> id mediumint(9) NOT NULL auto_increment,-> name char(11) default NULL,-> rq timestamp default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,-> PRIMARY KEY (id)-> ) ;Query OK, 0 rows…

JAVAWEB企业级开发关于Tomcat的安装和配置

首先,我们来了解一下什么是JSP:动态网页 静态:规定不会变化 动态:随着时间、地点、用户操作改变而改变 1.动态网页: 需要使用到 服务器端脚本语言(JSP) 2.使用的架构: CS:Client Server 不足…

mysql api 连接池_SpringBoot-整合HikariCP连接池

HikariCP连接池概述池化思想 池化思想是我们项目开发过程中的一种非常重要的思想,如整数池,字符串池,对象池、连接池、线程池等都是池化思想的一种应用,都是 通过复用对象,以减少因创建和释放对象所带来的资源消耗&…

JAVAWEB入门tomcat服务器配置

1.配置&#xff1a; 部署项目的方式&#xff1a; 一、直接新建一个项目hello文件放到webapps目录下即可 C:\apache-tomcat-8.5.45\webapps\hello 再在hello文件中编辑hello.html 测试内容如下 <font colorred>hellotomcat </font> 接下来在网页的搜索栏输入 …

steam成就解锁器_MC技术指南如何使用SAM成就解锁?

点击蓝字关注我哦核心内容提前看:本文教大家如何轻松配置使用SAM程序&#xff0c;主要教大家如何正确使用。不正当的操作&#xff0c;可能会受到小红信&#xff0c;同时建议非必要情况下手动解锁成就更有乐趣。请下载群文件中MillionClub整合工具 SAM软件小百科&#xff1a;SA…

JAVAWEB入门第一篇

Servlet: server applet 概念&#xff1a;运行在服务器的小程序 所以Servlet就是一个接口&#xff0c;里面定义了java类被浏览器访问到(tomcat识别)的规则。 将来我们自定义一个类&#xff0c;实现Servlet接口&#xff0c;复写方法 在src路径下新建一个包cn.itcast.web.ser…

JAVAWEB入门之Sevlet的执行原理

上一节我们学习了快速入门&#xff0c; 但是里面的问题是ServletDemo1里面既没有创建对象&#xff0c;又没有写方法&#xff0c;竟然就被执行了&#xff0c;为什么呢&#xff1f; 我们来分析一下Sevlet的执行原理 1.当服务器接收到客户端浏览器的请求后&#xff0c;会解析请求…

JAVAWEB入门之Servlet的注解配置

1.我们发现&#xff0c;配置servlet很麻烦&#xff0c;要一直在web.xml里面配置<servlet></servlet> 因此官方给了我们一个新的版本servlet3.0 好处&#xff1a;支持注解配置。可以不用web.xml了 步骤&#xff1a;1.创建javaEE项目&#xff0c;选择Servlet的版本…

JAVAWEB入门之IDEA与tomcat相关配置

IDEA与tomcat相关配置 IDEA会为每一个tomcat部署的项目单独建立一份配置文件&#xff0c;查看启动项目后的控制台的log&#xff1a;Using CATALINA_BASE: "C:\Users\14811\.IntelliJIdea2017.1\system\tomcat\_test2"打开这个文件路径后&#xff0c;我们发现里面有…

mysql 自增id replace_MySQL--REPLACE INTO与自增

####测试环境&#xff1a;MySQL版本&#xff1a;MySQL 5.7.19复制模式&#xff1a;ROW####执行下面操作&#xff1a;##测试脚本&#xff1a;CREATE TABLET_AUTO_TEST(IDINT AUTO_INCREMENT PRIMARY KEY,C1INT NOT NULL,UNIQUE KEYUNI_C1(C1))INSERT INTO T_AUTO_TEST(ID,C1)VAL…

JAVAWEB入门之Servlet_体系结构

我们建的这个类要继承复写Servlet的所有方法&#xff0c;但是这会很麻烦&#xff0c;所有的写出来很繁琐当摆设&#xff0c;所以我们想&#xff0c;可不可以定义一个类&#xff0c;然后继承这些类和方法&#xff0c; Servlet的体系结构&#xff0c; Servlet----接口----爷爷 …

JAVA入门级教学之HTTP

HTTP概念&#xff1a;Hyper Text Transfer Protocol 超文本传输协议 传输协议&#xff1a;定义了客户端和服务器端通信时发送数据的格式 特点&#xff1a;1.基于TCP/IP的高级协议&#xff0c;要经过三次握手&#xff0c;说明也是一种安全的协议 2.默认端口号是80 http://…

mysql 取年月日 语句_MySQL学习从这里出发!

MySQL数据库开发学习中&#xff0c;想满足一些需求&#xff0c;无疑需要经常与数据打交道&#xff0c;例如&#xff0c;我们在使用IO的一些技术的时候&#xff0c;常常需要将一些数据存储到外部文件&#xff0c;可能大家会问&#xff0c;我们初学的时候常常会简单的保存一些数据…

JAVAWEB入门之Requset原理

Request 1.request和respinse对象的原理 request和respinse对象是由服务器创建的&#xff0c;我们只是使用他们 request对象是来获取请求消息&#xff0c;response是来设置响应消息 3.request对象的继承体系结构&#xff1a; ServletRequest-------接口 继承 HttpServlet…

mysql事务编号_Mysql事务

一&#xff1a;mysql事务1.需求从orders表中查询最新的销售订单编号&#xff0c;并使用下一个销售订单编号作为新的销售订单编号。在指定客户的orders表中插入新的销售订单。将新的销售订单项目插入orderdetails表中。从orders表和orderdetails中获取数据以确认更改。如果由于数…

java try catch 例子_java try catch

try catch机制非常好。那些觉得try catch不行的人&#xff0c;是他们自己的水平有问题&#xff0c;无法理解这种机制。并且这群人写代码不遵守规则&#xff0c;喜欢偷懒&#xff0c;这才造成try catch不好的错觉。详细解释&#xff1a;1.程序要健壮&#xff0c;必须要设计报错机…

java xss 默认值_一台 Java 服务器可以跑多少个线程?

原标题&#xff1a;一台 Java 服务器可以跑多少个线程&#xff1f;转自&#xff1a;简书&#xff0c;作者&#xff1a;新栋BOOK一台Java服务器能跑多少个线程&#xff1f;这个问题来自一次线上报警如下图&#xff0c;超过了我们的配置阈值。京东自研UMP监控分析打出jstack文件&…

java设计模式初探之装饰者_JAVA设计模式初探之装饰者模式

装饰者模式1、意图&#xff1a; 动态地给一个对象添加一些额外的职责。就增加功能来说&#xff0c; Decorator模式相比生成子类更为灵活。该模式以对客 户端透明的方式扩展对象的功能。2、适用环境(1)在不影响其他对象的情况下&#xff0c;以动态、透明的方式给单个对象添加职责…

redis在java中的方法_redis在java中的使用方法

Redis是key-value方式储存数据的内存数据库。下载后解压&#xff0c;redis-server.exe是redis服务&#xff0c;启动之后就可以使用redis。redis-cli.exe是客户端&#xff0c;可以访问本地或远程的redis。redis-cli.exe -h 127.0.0.1 -p 6379 命令行命令。修改-h后的ip…

Java写一个快速排序_快速排序java实现

1.快速排序的思想快速排序属于交换排序&#xff0c;是冒泡排序的升降版。相对于冒泡排序而言&#xff0c;快速排序增大了记录比较和移动的距离&#xff0c;将关键字较大的记录直接移动到后面&#xff0c;将关键字较小的记录直接移动到前面&#xff1b;不再是相邻两个记录依次进…