Python程序组成部分

news2024/11/26 3:27:08

此文为《Python入门经典以解决计算问题为导向的Python编程实践》27-31页的笔记。

程序组成部分

  • 一、模块
  • 二、表达式和语句
  • 三、空白
    • 缩进
    • 续行
  • 四、注释
  • 五、特殊元素
    • 1、关键字
    • 2、运算符
    • 3、标点符号(又名分隔符)
    • 4、字面量
  • 六、对象命名(很重要)

规则二、将程序视为解决问题的、可以执行的短文。程序由一组有序指令集合组成,按照输入的顺序逐条执行指令。部分指令可以组成一个模块存放在文件系统中。在Pyhon解释器中导入该模块,通过执行模块中的指令来实现程序的运行。
一个程序中可能会出现以下内容:模块、表达式和语句、空白、注释、特殊元素、对象。

一、模块

模块包含Python 命令集。
模块能另存为文件,并能导人Pythonshel中。
模块用法如下:
import 模块名
前面文章计算圆周长的程序——很新手,解析每行代码,让初学者看懂一段代码使用了数学中π就是import math。

二、表达式和语句

1、表达式:值和运算符的组合,将产生新值(返回值)。
例如:x的值是2,x+5的结果就是7,注意,这里x只是参与了计算,x的值不会变,还是2。
2、语句:执行一些任务,但没有返回值。
语句能执行任务,例如给变量赋值,x=5。
也能设定程序控制语句,例如如果if。

表达式的值可以进行输出。print(x+5)
语句进行输出会报错。例如print(x=2)
在这里插入图片描述

三、空白

空白用于分隔单词。Python中的空白可由以下符号产生:空格键、制表符、回车符、换行符、换页符和垂直制表符。在程序中使用空白,应该遵守如下的规则:

  • 表达式内或语句内的空白将被忽略。例如Y= X+5与Y=X+5是同样的意思。
  • 前导空白,放在一行起始位置的空白,定义为缩进
  • 空白行也被认为是空白,而且空白行的规则很简单,它可以出现在任何地方。

缩进

Python用缩进来分组。对于需要组合在一起的语句或表达式,采用相同的缩进来进行区分。
用空格来缩进时,一个缩进是4个空格
也可以用Tab来缩进。
缩进的好处在于它能提高可读性。要保持与制表符的空格数一致非常困难、在进行剪切和粘贴时尤为突出。幸运的是,一些能识别Python的编辑器(例如IDLE)会自动缩进,并且可以调整缩进。

续行

代码太长,超过编辑窗口,就不方便阅读。
这里可以使用反斜杠(\)进行分行,这种分行方式称为续行。
在这里插入图片描述

四、注释

程序是一个文档,它描述作者的思维过程。好的程序必须是可读的。
注释是提高可读性的重要途径。但注释不会利于程序运行,在运行时,Python会忽略注释。
单行注释:“#”开头的内容会被忽略,可以在其他代码后面注释,也可以单独一行(如下图)
多行注释:一对单引号(或双引号),中间的内容不会被执行,首尾必须统一,不能前面单引号,后面双引号。
在这里插入图片描述

五、特殊元素

1、关键字

关键字在Python中是特殊单词,不能用来进行命名操作。关键字表示将导人Pyon 解释器中的命令。完整的关键字列表如表所示。
在这里插入图片描述

不能在程序(变量、函数、类等)中使用关键字来命名。Pyhon已经将它们保留下来用于其他用途。

2、运算符

运算符是一些特殊标记(字符序列),在Pyhon解释器中具有一定意义。使用它们意味着进行特定的操作,如加法、减法或类似的处理。
在这里插入图片描述

3、标点符号(又名分隔符)

用来分开不同的元素,具体如下:
在这里插入图片描述

4、字面量

在计算机科学中,字面量代表一个固定值,这个值不能在程序中更改。几乎所有的编程语言都有表示原子值的符号,可能是整数、浮点数、字符串或布尔值。例如,123是一个字面量,它有一个固定值,不能修改。与字面量相反,可以赋予变量一个值,该值可以在代码的执行过程中进行修改。
(额外补充链接:https://gairuo.com/p/python-literals)

六、对象命名(很重要)

在Python中,命名规则如下:
1、名字必须以字母或者下划线(_)开始。

  • 数字不能作为首字符
  • 当名字包含多个单词时,可以使用下划线()来连接,例如monty_Python、holy_grail。Python和Python程序员通常使用以下划线开始的名称来表示一个特殊的变量初学时最好不要以下划线开头

2、除了首字符,名称可以包含任何字母、数字和下划线的组合

  • 名字不能是关键字
  • 名字中不能出现分隔符、标点符号或者运算符

3、名字长度不限。
4、名字是区分大小写的。
myName、MyName、myname 和Myname是不同的。

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

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

相关文章

十七.核心动画 - 使用重复图层(CAReplicatorLayer)构建自定义loading视图.

引言 本篇博客我们来详细的讨论一下CAReplicatorLayer图层,它是一个功能非常强大的工具,允许我们通过重复图层来创建复杂且高效的动画效果,无论是加载动画,粒子效果,还是其它重复性的图形动画,CAReplicato…

init.rc及其一些语法

1,rc文件 on property:同时判断两个条件 拷打gbt on property:sys.usb.configncm,adb 这是什么意思 config是ncm或adb 这是一个Android系统的属性,它表示USB接口的配置。"ncm"代表使用NCM(Network Control Model)协议…

11、Fawkes

难度 高 目标 2个root 3个flag 当我看到这种类型我就知道肯定是docker系列的连锁环境了 netdiscover -i eth0 -r 192.168.189.0/24 kali 192.168.189.58 靶机 192.168.189.69 扫描一下开放的端口和服务识别 应该是存在ftp 的匿名访问,然后还有一个monkeycom&…

【Material-UI】Autocomplete 组件中的自定义过滤功能(Custom filter)详解

文章目录 一、简介二、createFilterOptions 工厂函数配置选项返回值示例代码代码解释 三、高级自定义:模糊匹配四、实际应用场景1. 数据清理和标准化2. 特定业务逻辑 五、总结 Material-UI 的 Autocomplete 组件不仅提供了强大的自动完成功能,还允许开发…

Prometheus监控组件在SpringBoot项目中使用实践

Prometheus监控组件在SpringBoot项目中使用实践 时间:2024/7/29 背景:本人最近参与的一个项目,要监控远程软硬件以及本地软硬件,实现远程监控以及告警功能。 开发环境: JDK1.8,Maven,PostgreS…

automa自动化工作流教程(三)循环元素进行操作

循环元素 选择器选中的必须是多个元素,如果是css选择器,举例:class属性有多个 .postTitle 并且要生成或填上循环id 有开发需求 call me

【轨物推荐】谈谈科学、工程与技术的关系

原创 宋华振 说东道西 2022年07月05日 23:34 上海 为什么要谈这个话题? 前几天,戴老师转发了一篇《中国科学创新四十年-可能还没搞明白科学和技术的基本概念》,这篇文章谈及了科学与技术的差异,其中谈到了几个误区,误…

HCIP实验-MGRE+OSPF

实验拓扑图: 实验要求: 1.R6为ISP,只能配置IP地址,R1-R5的环回为私有网段 2.R1/4/5为全连的MGRE结构, R1/2/3为星型的拓扑结构,R1为中心站点 3.所有私有网段可以互相通讯,私有网段使用ospf协…

【C++】————哈希表

作者主页: 作者主页 本篇博客专栏:C 创作时间 :2024年8月6日 前言: 在计算机科学的广袤世界中,数据结构犹如基石,支撑着各种高效算法的构建与运行。而哈希表(Hash Table)&#…

【Python系列】使用 `isinstance()` 替代 `type()` 函数

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

24. 两两交换链表中的节点(Java)

目录 题目描述:示例 :代码实现: 题目描述: 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换&am…

基于飞腾E2000的科东软件Intewell工业实时操作系统方案

科东软件Intewell工业实时操作系统是完全自主开发的产品,具有20年以上行业应用经验。Intewell基于微内核架构设计,具备高实时、高可靠等特点,同时虚拟化技术支持GPOSRTOS等多种操作系统架构,可实现实时和非实时业务融合应用&#…

揭秘LoRA:利用深度学习原理在Stable Diffusion中打造完美图像生成的秘密武器

文章目录 引言LoRA的原理LoRA在角色生成中的应用LoRA在风格生成中的应用LoRA在概念生成中的应用LoRA在服装生成中的应用LoRA在物体生成中的应用结论 引言 在生成式人工智能领域,图像生成模型如Stable Diffusion凭借其出色的生成效果和广泛的应用场景,逐…

渲染技术如何应对数据增长与计算挑战

随着科技的飞速发展,数字内容的制作与呈现变得日益复杂和精细,这对渲染技术提出了前所未有的挑战。特别是在数据爆炸式增长和计算需求急剧提升的背景下,如何优化渲染技术,以应对这些挑战,成为了一个亟待解决的问题。 …

牛客JS题(二十三)判断质数

注释很详细&#xff0c;直接上代码 涉及知识点&#xff1a; 原型链如何优雅的判断质数 题干&#xff1a; 我的答案 <!DOCTYPE html> <html><head><meta charsetutf-8></head><body><script type"text/javascript">/*** 素…

试用期没烦恼 神器!!!使用doxygen+Graphviz自动生成函数调用关系图

大家好&#xff0c;我是 小杰学长 使用doxygenGraphviz自动生成函数调用关系图 gitee源码仓库链接跳转 前言 1.下载 首先&#xff0c;下载2个软件&#xff0c; 最新版即可&#xff0c; Doxygen 下载地址&#xff1a; https://sourceforge.net/projects/doxygen/ 下载步骤…

OLAP技术与数据仓库:深度分析与决策支持

目录 一、OLAP 概述 二、OLAP应用场景 三、OLAP对数据仓库的意义 一、OLAP 概述 OLAP&#xff08;Online Analytical Processing&#xff09;即联机分析处理&#xff0c;是一种用于多维数据分析的技术和工具。它允许用户通过多维数据模型进行复杂的分析&#xff0c;以便快速浏览…

sqli-labs(超详解)——Lass32~Lass38

Lass32&#xff08;宽字节注入&#xff09; 源码 function check_addslashes($string) {$string preg_replace(/. preg_quote(\\) ./, "\\\\\\", $string); //escape any backslash$string preg_replace(/\/i, \\\, $string); …

【iOS】——AutoReleasePool底层原理及总结

自动释放池 AutoreleasePool自动释放池用来延迟对象的释放时机&#xff0c;将对象加入到自动释放池后这个对象不会立即释放&#xff0c;等到自动释放池被销毁后才将里边的对象释放。 自动释放池的生命周期 从程序启动到加载完成&#xff0c;主线程对应的runloop会处于休眠状…

C++初学(11)

不知不觉就第11篇了QWQ 11.1、指针和自由存储空间 之前提到了计算机程序在存储数据时必须跟踪的3个基本属性&#xff1a; &#xff08;1&#xff09;信息存储在何处&#xff1b; &#xff08;2&#xff09;存储的值为多少&#xff1b; &#xff08;3&#xff09;存储的信息…