【编程基础之Python】6、Python基础知识

news2025/8/2 21:24:54

【编程基础之Python】6、Python基础知识

  • Python基础知识
    • Python的基本要素
      • 模块
      • 语句
      • 表达式
      • 注释
    • Python的代码格式

Python基础知识

Python 是一种高级的、动态的、解释型的编程语言,具有简单易学、开发效率高、可读性强等特点,广泛应用于数据科学、Web 开发、人工智能等领域。

尽管Python是一种面向对象的语言,但Python的代码编写比较自由,并不像Java语言那样需要定义一个main方法作为入口点。Python程序的代码可以像批处理文件一样从上到下按顺序编写,这也是Python适合做运维的原因。

尽管Python语言的代码自由度更大,但这并不等于Python语言的代码可以随便编写,仍然需要一定的结构。学习Python需要了解它的语法特点,比如注释规则、代码缩进、编码规范等。

Python的基本要素

Python程序包括以下一些基本要素。

模块

Python 程序可以分为多个模块,每个模块是一个独立的文件,包含一些可执行的 Python 代码。使用 import 语句可以将一个模块导入到当前程序中。

要进行数学计算,我们需要导入math模块。

import math

# 获取圆周率
print(math.pi)
# 开平方
print(math.sqrt(4))
# 计算对数值
print(math.log(9, 3))

image-20230220233347527

要进行数据分析,我们需要导入numpy模块。

import numpy as np

# 创建1维数组
ary1 = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
print(ary1)
# 创建1维数组
ary2 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(ary2)
print(ary2.shape)

image-20230220233855399

语句

Python 程序中的语句是一系列指令,用于控制程序的执行流程。Python 中的语句包括赋值语句、条件语句、循环语句、函数定义语句等。

  • 赋值语句

Python 中的赋值语句用于给变量赋值,格式为:

变量名 = 表达式

在上面的案例中:

ary1 = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])

就是将一个1维数据赋值给变量ary1。

  • 条件语句

Python 中的条件语句用于根据条件来选择执行的代码块,格式为:

if 条件语句:
    代码块1
else:
    代码块2

比如比较两个数的大小:

# 条件语句
a = 10
b = 20
if a > b:
    print("a 大于 b")
else:
    print("a 小于等于 b")

image-20230220234456771

表达式

Python 程序中的表达式是一组由运算符和操作数组成的式子,用于计算某个值。Python 中的表达式包括算术表达式、比较表达式、逻辑表达式等。

  • 算术表达式

根据两个变量的值,计算第三个变量:

# 算术表达式
a = 10
b = 3
c = a + b * 2 / 5

image-20230220234918174

  • 比较表达式
# 比较表达式
a = 10
b = 3
c = a > b
d = a < b
print(c, d)

image-20230220235118623

注释

注释,就是对代码的解释、说明、备注等,通常用于对代码中的复杂逻辑、语句含义及作用等做出说明,方便人们阅读理解代码。

在添加注释时,一定要有意义,要能充分体现代码的作用。

在Python中,通常包括3种类型的注释,分别是单行注释、多行注释和Python 2中常用的中文注释。

  • 单行注释

在Python中,使用“#”作为单行注释发符号。从符号“#”开始直到行尾的所有内容都是注释内容,会被Python编译器忽略。

单行注释可以放在要注释的代码的前一行,也可以放在要注释的代码的行尾。

在前面的案例中,所有注释都是单行注释,并且都是在要注释的代码的前一行,比如:

# 获取圆周率
print(math.pi)
# 开平方
print(math.sqrt(4))
# 计算对数值
print(math.log(9, 3))

当然,也可以将注释放到行尾,比如:

# 获取圆周率
print(math.pi) # 这也是正确的注释,获取圆周率,行尾注释
# 开平方
print(math.sqrt(4)) # 这也是正确的注释,开平方
# 计算对数值
print(math.log(9, 3)) # 这也是正确的注释
  • 多行注释

在Python中,没有一个单独的多行注释标记,而是用一对三引号的内容来表示多行注释。比如:

"""
下面的三行代码的作用分别是:
第1行:获取圆周率
第2行:开平方
第3行:计算对数值
"""
print(math.pi)
print(math.sqrt(4))
print(math.log(9, 3))

或者:

'''
下面的三行代码的作用分别是:
第1行:获取圆周率
第2行:开平方
第3行:计算对数值
'''
print(math.pi)
print(math.sqrt(4))
print(math.log(9, 3))

但是,这其实并不是真正的注释,而是一个匿名的多行字符串。

你会发现,它在Python代码中的语法高亮跟字符串的一样,而不是跟单行注释的一样,而在其他语言,比如Java中,单行注释和多行注释的高亮颜色是一样的。

# 注释的颜色是灰色的
# 你看,字符串的颜色是绿色的

a = "楼上说得对,我是绿色的"

"""
他们说我是多行字符串
但是我的颜色跟注释的颜色不一样
我的颜色跟字符串的颜色一样
我觉得我是个假注释
"""

image-20230221002838741

既然它是字符串,那就是可以赋值的。

"""
他们说我是注释
我觉得我是个假注释
"""
a = """
我真的是注释吗?
不,其实我是一个字符串!
我有自己的类型、我在内存中占用了空间、有内存地址
"""
print(a, type(a), id(a))
print(
    "print 的内容其实可以换行写,我是字符串,没商量,1"
)
print(
    "print 的内容其实可以换行写,我是字符串,没商量,2"
    # 我确实是注释,虽然我在print里面,但是打印的结果看不到我
    """
    我真的是注释吗?
    如果我真的是注释,那么现在编译器应该忽略我,print不应该把我打印出来,只会打印我前面的那行。
    但你看我打印出来了,我楼上的那行注释就没打印出来,所以我真的只是一个匿名的多行字符串。
    """
)

执行之后,输出内容如下:

image-20230221003636683

  • 中文注释

在Python 2中需要用到,但在Python 3中并不需要了,用于指定当前脚本中包含中文,需要用utf-8编码。

# coding=utf-8

Python的代码格式

Python的代码格式非常重要,因为它可以影响到代码的可读性和可维护性。在Python社区中,通常会遵循一些通用的代码格式约定,例如PEP 8(Python Enhancement Proposal 8)。

一些Python代码格式的基本要点:

  • 缩进:Python使用缩进来表示代码块,一般使用4个空格作为缩进距离。
  • 行长:每行代码不应超过80个字符,可以使用反斜杠(\)来拆分长行。
  • 空格:在逗号、冒号、分号后应加上空格;在二元运算符两侧应加上空格;函数定义和调用时,函数名和左括号之间不应有空格。
  • 命名规范:变量名、函数名和类名应该使用小写字母,用下划线来分隔单词。常量名应该全部大写,用下划线来分隔单词。私有变量应该以一个下划线开头。类名应该以大写字母开头,采用驼峰命名法。
  • 模块导入:在文件开头应该先导入标准库模块,然后是第三方库模块,最后是本地应用程序模块。每个导入应该单独一行。
  • 函数:函数定义时应该有文档字符串,用于说明函数的用途和参数的含义。函数应该尽量短小,每个函数都应该完成一个特定的任务。函数应该采用动词或动词短语命名,用于描述函数的行为。

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

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

相关文章

CRM系统能帮外贸行业解决哪些问题

国内的外贸行业经历了四个发展阶段&#xff0c;从发展期到繁荣期&#xff0c;CRM客户管理系统逐步走到幕前&#xff0c;成为外贸企业必不可少的主打工具。那么外贸行业整面临哪些问题&#xff1f;该如何解决&#xff1f;下面我们就来说说适合外贸行业的CRM解决方案。 外贸行业…

数据分享|2023年OSM道路数据(全国,分省,分市)

道路数据是我们在各项研究中经常使用的数据!道路数据虽然很常用,但是却基本没有能下载最近年份道路数据的网站,所以很多人不知道如何获到道路数据。 本次我们为大家推荐的下载道路数据的网站是Open Street Map!我们先来了解下Open Street Map,其简称为OSM,是一个开源的地…

整数保序的离散化(C/C++)

目录 1. 离散化的概念 1.1 离散化的运用思路 1.2 离散化的方法 1.2.1 排序 1.2.2 确定一个元素离散化后的结果 1.3 案例分析 1.3.1 1.3.2 区间和 &#xff08;来源&#xff1a;Acwing&#xff09; 1. 离散化的概念 离散化&#xff0c;把无限空间中有限的个体映射到有限的…

机房信息牌系统

产品特色&#xff1a; 无线低功耗安装简单&#xff0c;快速布置易于维护墨水屏显示&#xff0c;清晰&#xff0c;更环保信息后台推送&#xff0c;远程管理多模版样式随意制作多尺寸&#xff1a;4.2寸&#xff0c;7.5寸&#xff0c;10.2寸4.2寸7.5寸10.2寸标签特性&#xff1a;…

每日一个小技巧:教你如何使用终端工具给你的电脑发送弹窗提醒

现在人手一部智能手机&#xff0c;这些智能手机都有个非常实用的功能&#xff0c;那就是弹窗提醒。当我们收到短信&#xff0c;或者微信信息时&#xff0c;手机就会弹窗显示信息的大致内容。有了这个功能你就不会错过重要信息了。 电脑上也有类似的功能&#xff0c;也很实用。…

改进YOLO系列 | 添加轻量化Decouple_Head 和 ASFF_Head

绿色为ASFF_Head,浅蓝色Decoupled_Head,深蓝色是第三步加的_initialize_dh_biases方法后的效果。 参数量与计算量对比 模型参数量 parameters计算量GFLOPsyolov5s_Head723538916.5ASFF_Head1267484725.0Decoupled_Head892869722.0结构图 本篇介绍的这个Decouple_Head和YOLOX…

亚马逊、temu、速卖通、eBay如何提高店铺的订单数量?有什么技巧?

亚马逊卖家店铺的排名与店铺的订单数量有很大关系&#xff0c;所以卖家必须尝试改善店铺的销售。如果找不到正确的方法&#xff0c;订单速度很慢&#xff0c;卖家应该如何提高店铺的订单数量&#xff1f; 一、选择价格低、流量大的产品 无论是精细操作还是配送模式操作&…

代码随想录 NO51 | 动态规划_leetcode583. 两个字符串的删除操作 72. 编辑距离

动态规划_leetcode583. 两个字符串的删除操作 72. 编辑距离 编辑距离总结动态规划快结束了&#xff0c;时间过的好快啊&#xff0c;今天编辑距离系列结束&#xff01; 583. 两个字符串的删除操作 给定两个单词 word1 和 word2 &#xff0c;返回使得 word1 和 word2 相同所需的…

python使用requests提交post请求并上传文件(multipart/form-data)

目录 一、背景 二、请求接口上传文件 2.1、分析接口 2.2、python进行请求 三、总结 一、背景 也是前几天&#xff0c;有一个需求上传文件需要自动化。具体是上传到系统一个文件&#xff0c;并收到返回结果。考虑使用python的requests&#xff0c;一般这种查询或上传文件的接…

DMotion - 基于DOTS的动画框架和状态机

【博物纳新】专栏是UWA旨在为开发者推荐新颖、易用、有趣的开源项目&#xff0c;帮助大家在项目研发之余发现世界上的热门项目、前沿技术或者令人惊叹的视觉效果&#xff0c;并探索将其应用到自己项目的可行性。很多时候&#xff0c;我们并不知道自己想要什么&#xff0c;直到某…

Android反射@hide API 方法、变量,支持Android11和Android12

Android源码中现在有大量的方法和变量被hide所修饰&#xff0c;而这些被hide修饰的方法和变量是不允许应用层进行反射获取的&#xff0c;所以富有探索精神的程序员们就开始想尽各种办法绕过系统hide限制来使用hide修饰的方法和变量。1、套娃&#xff08;适配Android10即之前&am…

Python实现贝叶斯优化器(Bayes_opt)优化Catboost分类模型(CatBoostClassifier算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。1.项目背景贝叶斯优化器(BayesianOptimization) 是一种黑盒子优化器&#xff0c;用来寻找最优参数。贝叶斯优化器是基…

PHPExcel 表格设置

4.5.3。通过行和列设置单元格值 通过设置坐标单元格值可以使用工作表的setCellValueByColumnAndRow方法来实现。 //设置单元格B8 $objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(1, 8, ‘Some value’); 4.5.4。由列和行中检索的小区 检索的小区的值&#…

Blender——竹篮的制作

效果图前言参考视频&#xff1a;Blender 竹篮建模编制效果3D教程建议Blender版本在v3.0.0或以上&#xff0c;本实验的blender为v3.4.1操作步骤打开一个【常规项目】。点击shading下拉列表&#xff0c;将颜色改为【随机】&#xff0c;背景改为【世界坐标】&#xff0c;勾选【Cva…

Linux期末考试应急

Linux期末考试应急 虚拟机添加硬盘、分区、格式化、挂载、卸载 fdisk -l#查看系统现有分区fdisk <指定磁盘>#指定磁盘分区sudo mkfs.ext3 <指定分区>#格式化磁盘###挂载磁盘1.新建一个目录sudo mkdir /mnt/test2.将指定分区挂载到对应目录sudo mount /dev/sdb10 /…

里程计(一) 数学模型及STM32实现

一、首先确保接线和硬件没问题&#xff0c;并确定控制逻辑 测试单片机-驱动板-电机连线是否接通&#xff1a;控制板IN1,IN2一个接3.3V一个接GND,ENA1接3.3V测左电机&#xff1b;控制板IN3,IN4一个接3.3V一个接GND,ENA2接3.3V测右电机。 在电机已经安装完毕的情况下&#xff0c;…

SAP ABAP中的数据类型 Data Types

简单来说分两种&#xff1a; 数据字典里定义的在ABAP程序里定义的 文章目录1. ABAP数据字典里的1.1 数字型的1.2 字符型1.3 字节型1.4 特殊类型2. 预定义的ABAP数据类型2.1 预定义数字型2.2 预定义字符型2.3 预定义字节型1. ABAP数据字典里的 1.1 数字型的 用在数学计算里的…

IP、MAC和端口号——网络通信中确认身份信息的三要素

目录 &#x1f30f; IP地址 &#x1f30f; MAC地址 &#x1f30f; 端口号 IP、MAC和端口号——网络通信中确认身份信息的三要素 在茫茫的互联网海洋中&#xff0c;要找到一台计算机非常不容易&#xff0c;有三个要素必须具备&#xff0c;它们分别是 IP 地址、MAC 地址和端口…

【Galois工具开发之路】关于ClassFileTransformer的注意点

关于ClassFileTransformer 该接口是javaagent的 Instrumentation.addTransformer 方法的入参之一&#xff0c;用于给加载的类添加一个类转换器&#xff0c;确保在类进入main方法之前&#xff0c;对类进行字节码插桩。 接口函数说明 该接口只有一个方法&#xff0c;即 byte[…

[SSD固态硬盘技术 19] 谁是数据的守护神? 盘内RAID1/RAID5图文详解_盘内数据冗余保护

版权声明&#xff1a; 付费作品&#xff0c;禁止转载前言提到冗余保护&#xff0c;最容易想到的就是RAID(Redundant Arrays of Independent Disks) , 独立冗余磁盘阵列。它是一种把多块独立的物理硬盘按不同方式组合形成一个硬盘组&#xff0c;以此提供比单个硬盘更高的存储性能…