python基础知识总结(第一节)
一、python简介:
Python是一种解释型,面向对象的高级语言。
Pyhton的语法和动态类型,以及解释性语言的本质,使它一跃成为多数平台上写脚本和快速开发应用的编程语言。
python语言百度百科介绍
二、Python基础语法:
1、注释
单行注释:以#开头,#右边的所有文字以及字符,都已经变成注释说明,注释并不是要执行的程序,而是起辅助作用解释说明代码!
注意:#和注释的内容之间一般以一个空格隔开;
多行注释:多行注释是以一对三引号""" """
2、字面量
在Python中,字面量是指在代码中直接显示的值,不需要通过变量或者其他方式间接获取。Python中的字面量可以是以下几种类型:
整数(Integer) | 例如, |
浮点数(Float) | 例如, |
字符串(String) | 例如, |
布尔值(Boolean) | 例如, |
空值(None) | 例如, |
列表(List) | 例如, |
元组(Tuple) | 例如, |
字典(Dictionary) | 例如, |
集合(Set) | 例如, |
注意:在python中,可以使用type()将数据类型转换为不同的格式。
3、数据类型转换
将字符串转换为整数 | num = int("123") # num = 123 |
将字符串转换为浮点数: | num = float("123.45") # num = 123.45 |
将整数或浮点数转换为字符串: | str_num = str(123) # str_num = "123" |
将字符串转换为列表,假设字符串以特定分隔符分隔: | lst = "1,2,3".split(",") # lst = ["1", "2", "3"] |
将列表转换为字符串,并用特定分隔符连接: | str_lst = ",".join(["1", "2", "3"]) # str_lst = "1,2,3" |
将字符串转换为字典,假设字符串是有效的JSON格式: | import json # dict_obj = {"name": "John", "age": 30} |
将字典转换为字符串,假设要转换为有效的JSON格式: | import json # dict_obj = {"name": "John", "age": 30} |
注意:
- 浮点数转化整数,会丢失精度,会自动丢弃小数点后的数字,如果再次将整数转化成浮点数,其精度不会还原,只在数字后加小数点在加0
- 任何类型都可以转化成字符串
- 不是任何字符串都可以转化成整数
4、标识符
python标识符有变量标识符、函数标识符、类标识符、模块标识符、下划线开头的标识符、双下划线开头、双下划线结尾的标识符、整型标识符、浮点型标识符、字符串型标识符、列表型标识符、元组型标识符和字典型标识符。详细介绍:1、变量标识符,用于标识变量的名称,通常遵循下划线命名法;2、函数标识符,用于标识函数的名称,通常遵循下划线命名法;3、类标识符等等。
1、标识符的组成规则:
标识符可以由字母(包括大小写字母)、数字和下划线组成。
标识符的第一个字符必须是字母(包括大小写字母)或下划线(_)。
标识符不能以数字开头,但可以包含数字。
标识符对大小写敏感,即大小写字母是不同的标识符。
标识符不能是 Python 的关键字(保留字)或内置函数的名称。
2、通用标识符规范:
变量标识符:用于标识变量的名称,通常遵循下划线命名法(snake_case),例如 "first_name"、"user_age"。
函数标识符:用于标识函数的名称,通常遵循下划线命名法(snake_case),例如 "calculate_average"、"print_message"。
类标识符:用于标识类的名称,通常遵循大驼峰命名法(CamelCase),即单词首字母大写,例如 "CarModel"、"PersonInfo"。
模块标识符:用于标识模块的名称,通常使用全小写字母,如 "math"、"random"。
3、Python中的特殊标识符:
下划线开头的标识符:以单个下划线开头的标识符通常表示私有的属性或方法,例如 "_hidden_variable"、"_private_method"。
双下划线开头、双下划线结尾的标识符:以双下划线开头和结尾的标识符为内建的标识符,如 "init"、"len"。这种命名约定用于避免与用户自定义的标识符冲突。
4、类型标识符:
整型标识符:用来表示整数值,如 "num1"、"count".
浮点型标识符:用来表示浮点数值,如 "price"、"average".
字符串型标识符:用来表示字符串值,如 "name"、"message".
列表型标识符:用来表示列表对象,如 "data_list"、"result_list".
元组型标识符:用来表示元组对象,如 "info_tuple"、"data_tuple".
字典型标识符:用来表示字典对象,如 "user_info"、"config_dict".
注意:python语言标识符命名规则都是不允许数字出现在开头的
5、运算符
算数(数学)运算符
运算符 | 描述 | 实例 |
+ | 加 | 俩个对象相加a+b输出结果是30 |
- | 减 | 得到负数或是一个数减去另一个数 a - b 输出结果 -10 |
* | 乘 | 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200 |
/ | 除 | b / a 输出结果 2 |
// | 取整数 | 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 |
% | 取余 | 返回除法的余数 b % a 输出结果 0 |
** | 指数 | a**b 为10的20次方, 输出结果 100000000000000000000 |
赋值运算符
运算符 | 描述 | 实例 |
= | 赋值运算符 | 把=号右边的结果赋给左边的变量,如num=1+2*3,结果num的值为7 |
复合赋值运算符
运算符 | 描述 | 实例 |
+= | 加法赋值运算符 | c += a 等效于 c = c + a |
-= | 减法赋值运算符 | c -= a 等效于 c = c - a |
*= | 乘法赋值运算符 | c *= a 等效于 c = c * a |
/= | 除法赋值运算符 | c /= a 等效于 c = c / a |
%= | 取模赋值运算符 | c %= a 等效于 c = c % a |
**= | 幂赋值运算符 | c **= a 等效于 c = c ** a |
//= | 取整除赋值运算符 | c //= a 等效于 c = c // a |
比较运算符
在python中,可以表示真假的数据类型是:
布尔类型,字面量True表示真,字面量False表示假
注:True和False中的首字母必须大写
~除了可以定义的布尔类型外,还可以通过<比较运算符>计算得到布尔类型
运算符 | 描述 |
== | 判断是否相等 |
!= | 判断是否不等 |
> | 判断是否大于 |
< | 判断是否小于 |
>= | 判断是否大于等于 |
<= | 判断是否小于等于 |
~在python中,可以表示真假的数据类型是:
布尔类型,字面量True表示真,字面量Flase表示假
~除了可以定义布尔类型外,还可以通过比较计算的到布尔类型
6、字符串
字符串的三种定义方式
单引号定义法: 双引号定义法: 三引号定义法:
注意:
- 字符串的引号嵌套
- 单引号可以包含双引号
- 双引号可以包含单引号
- 也可以使用转移字符(\)来将引号接触效用,变为普通字符串
- 如果不用变量去接受这个三引号定义法的定义的话,那他就是个用三引号标记的注释
字符串拼接
注意:字符串无法和非字符串变量进行拼接
默认print语句输出内容会自动换行,在print语句中,加上 end=‘’ 即可输出不换行了
字符串格式化
- 可以通过如下语法,完成字符串和变量的快速拼接
格式符号 | 转化 |
%s | 将内容转换成字符串,放入占位位置 |
%d | 将内容转换成整数,放入占位位置 |
%f | 将内容转换成浮点型,放入占位位置 |
格式化精度控制
我们可以使用辅助符号"m.n"来控制数据的宽度和精度
m,控制宽度,要求是数字,如果设置的宽度小于数字自身,则不生效
.n,控制小数点精度,要求是数字,会进行小数的四舍五入
示例: %5d:表示将整数的宽度控制在5位,如数字11,就会变成:[空格][空格][空格]11,用三个空格补足宽度。
%5.2f:表示将宽度控制为5,将小数点精度设置为2 。小数点和小数部分也算入宽度计算。如,对11.345设置了%7.2f 后,结果是:[空格][空格]11.35。2个空格补足宽度,小数部分限制2位精度后,四舍五入为 .35
%.2f:表示不限制宽度,只设置小数点精度为2,如11.345设置%.2f后,结果是11.35
字符串快速格式化
1.可以通过
f“{变量}{变量}”的方式进行快速格式化
2.这种方式:
~不用理会变量类型
~不对变量做精度控制
适合对精度没有要求的时候使用
字符串格式化-表达式的格式化:
表达式(一条具有明确执行结果的代码语句)
1.如何格式化表达式?
~f“{表达式}”
~“%s\%d\%f” %(表达式,表达式,表达式)
7、数据输入
print语句(函数),可以完成将内容(字面量,变量等)输出到屏幕上。与之对应的input语句,用来获取键盘输入
~数据输出:print
~数据输入:input
使用上也非常简单:
~使用input()语句可以从键盘获取输入
~使用一个变量接受(存储)input语句获取的键盘输入数据即可
~可以使用:input(提示信息),用以在使用输入内容之前显示提示信息。
~要注意,无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型的
相关文章:

python基础知识总结(第一节)
一、python简介: Python是一种解释型,面向对象的高级语言。 Pyhton的语法和动态类型,以及解释性语言的本质,使它一跃成为多数平台上写脚本和快速开发应用的编程语言。 python语言百度百科介绍 二、Python基础语法:…...

DOS学习-目录与文件应用操作经典案例-comp
新书上架~👇全国包邮奥~ python实用小工具开发教程http://pythontoolsteach.com/3 欢迎关注我👆,收藏下次不迷路┗|`O′|┛ 嗷~~ 目录 一.前言 二.使用 三.案例 案例 1: 基本比较 案例 2: 十进制显示差异 案例 3: 字符形式显…...

原神抽卡点名程序教程(直接下载用)
今天我要给大家分享一个在抖音上特别火的视频——原神抽卡点名程序教程。 废话不多说,直接上链接 :--点击下载原神抽卡程序 步骤1: 步骤2&am…...

gpt-4o继续迭代考场安排程序 一键生成考场清单
接上两篇gpt-4o考场安排-CSDN博客,考场分层次安排,最终exe版-CSDN博客 当然你也可以只看这一篇。 今天又添加了以下功能,程序见后。 1、自动分页,每个考场打印一页 2、添加了打印试场单页眉 3、添加了页脚 第X页,…...
php 设置时区
date_default_timezone_set() 设置所有日期/时间函数使用的默认时区 除了在脚本中使用此函数设置默认时区,还可以使用 INI 设置 date.timezone 设置默认时区。 参数 timezoneId 时区标识符,像 UTC、Africa/Lagos、Asia/Hong_Kong 或 Europe/Lisbon。…...
ArcGIS不同图斑设置不同的透明度
对于设置一个图层的整体的透明度,我们在 ArcGIS制作带蒙版的遥感影像地图http://mp.weixin.qq.com/s?__bizMzIzNjM2NTYxMg&mid2247509080&idx1&sn38dccf0a52bb3bb3758f57114ee38b72&chksme8da161bdfad9f0d363da90959a8524dcf2b60d0e8d999f8ebeef0…...

前端 CSS 经典:图片边框
前言:有这么一个业务,需要边框随着图片宽度的变化而变化,比如一些聊天的气泡框等。 实现原理:使用 border-image 属性 效果图: 实现代码: <!DOCTYPE html> <html lang"en"><he…...
异常有什么,异常类有什么
在Java中,异常(Exception)是一种在程序运行过程中出现的不正常情况。异常机制提供了一种从错误中恢复的途径。异常分为两大类:检查异常(Checked Exception)和运行时异常(Runtime Exception&…...

如何解压忘记了密码的加密zip压缩包?这两个方法收藏好!
加密是一种保护信息不被未经授权访问的重要手段。ZIP压缩包作为一种常见的文件压缩格式,zip文件加密是很多人都回去做的一件事情,那么zip加密文件如何解密?有几种方法可以解密呢?今天介绍几种方法给大家。 一、尝试常用密码 我们…...

java中,怎样用最简单方法实现写word文档
在跨平台环境中实现写word时,如果用现成的库,就会涉及跨平台兼容性问题,比如在安卓与java中实现写word的功能。还有一个问题就是,完全用程序生成word文档,工作量较大。所以采用了模板替换的方法。 docx文档本质就是一…...

大语言模型的工程技巧(三)——分布式计算
相关说明 这篇文章的大部分内容参考自我的新书《解构大语言模型:从线性回归到通用人工智能》,欢迎有兴趣的读者多多支持。 本文将讨论如何利用多台机器进行神经网络的分布式训练。利用多台机器来加速大语言模型的训练,是其获得成功的重要原…...

AI开发初体验:昇腾加持,OrangePi AIpro 开发板
文章目录 一、前言二、板子介绍2.1 拆箱2.2 板子规格2.2.1 常规项目2.2.2 扩展项目2.2.3 操作系统 2.3 点板画面 三、AI程序初体验3.1 新奇的地方3.2 运行第一个AI程序3.2.1 硬件连接3.2.2 串口连接3.2.3 开启外部IP端口3.2.4 查询板子IP地址3.2.5 了解 juypter lab 启动脚本&a…...

微服务架构下Docker容器技术与Kubernetes(K8S)
Kubernetes、微服务和Docker容器技术的结合提供了一个强大、灵活且高效的平台,能够应对现代应用程序的复杂性和动态性。Kubernetes的自动化管理、服务发现、负载均衡和配置管理,与Docker的标准化打包和运行环境相结合,最大化地发挥了微服务架…...
风萧萧兮易水寒,壮士一去兮不复还 的 rm 命令
风萧萧兮易水寒,壮士一去兮不复还 的 rm 命令 风萧萧兮易水寒,壮士一去兮不复还 的 rm语法几个示例/bin/rm Argument list too long – Linux”配合find与xargs完成删除海量文件使用find的delete选项 快速删除大文件 风萧萧兮易水寒,壮士一去…...

How Diffusion Models Work
introduction intuition goal 让神经网络学到图像是什么样的,一种方式是对数据添加不同级别的噪音,让神经网络能够区分细节/总体轮廓 训练一个神经网络去产生精灵 sampling nn 图像恢复 论文 https://zhuanlan.zhihu.com/p/686235079...

antd table列选中效果实现
前言 开发中有一个需要呈现不同时间点各个气象要素的值需求,我觉得一个table可以实现这类数据的展示,只是因为时间点时关注的重点,所以需要列选中效果,清晰的展示时间点下的要素数据。我选择的是antd的table组件,这个…...

Golang实现文件复制
方法:三种 package zdpgo_fileimport ("errors""io""os" )// CopyFile 使用io.Copy进行文件的复制,同时也会复制文件的所有权限 // param src 复制文件 // param des 目标文件 // return error 错误信息 func CopyFile(s…...

探秘SpringBoot默认线程池:了解其运行原理与工作方式(@Async和ThreadPoolTaskExecutor)
文章目录 文章导图Spring封装的几种线程池SpringBoot默认线程池TaskExecutionAutoConfiguration(SpringBoot 2.1后)主要作用优势使用场景如果没有它 2.1版本以后如何查看参数方式一:通过Async注解--采用ThreadPoolTaskExecutordetermineAsync…...

kubernetes(Jenkins、kubernetes核心、K8s实战-KubeSphere、)
文章目录 1. Jenkins1.1. 概述1.1.1. 简单部署1.1.2. 自动化部署1.1.3. DevOps概述1.1.4. CI/CD概述 1.2. jenkins介绍及安装1.2.1. 安装1.2.2. 解锁jenkins1.2.3. 安装推荐插件1.2.4. 创建管理员用户1.2.5. 升级jenkins版本1.2.6. 安装额外插件blue ocean1.2.7. jenkins界面说…...

国际数字影像产业园|科技与文创产品创意集市,共筑创新文化新高地
5月29日,为进一步增强园区与企业之间粘性,不断激发企业的创新活力,园区举办了“数媒大厦科技与文创产品创意集市活动”。本次活动由成都树莓信息技术有限公司主办,成都目莓商业管理有限公司、树莓科技(成都)…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...

解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...

【CSS position 属性】static、relative、fixed、absolute 、sticky详细介绍,多层嵌套定位示例
文章目录 ★ position 的五种类型及基本用法 ★ 一、position 属性概述 二、position 的五种类型详解(初学者版) 1. static(默认值) 2. relative(相对定位) 3. absolute(绝对定位) 4. fixed(固定定位) 5. sticky(粘性定位) 三、定位元素的层级关系(z-i…...

Ascend NPU上适配Step-Audio模型
1 概述 1.1 简述 Step-Audio 是业界首个集语音理解与生成控制一体化的产品级开源实时语音对话系统,支持多语言对话(如 中文,英文,日语),语音情感(如 开心,悲伤)&#x…...
【RockeMQ】第2节|RocketMQ快速实战以及核⼼概念详解(二)
升级Dledger高可用集群 一、主从架构的不足与Dledger的定位 主从架构缺陷 数据备份依赖Slave节点,但无自动故障转移能力,Master宕机后需人工切换,期间消息可能无法读取。Slave仅存储数据,无法主动升级为Master响应请求ÿ…...
Java 二维码
Java 二维码 **技术:**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...

Golang——7、包与接口详解
包与接口详解 1、Golang包详解1.1、Golang中包的定义和介绍1.2、Golang包管理工具go mod1.3、Golang中自定义包1.4、Golang中使用第三包1.5、init函数 2、接口详解2.1、接口的定义2.2、空接口2.3、类型断言2.4、结构体值接收者和指针接收者实现接口的区别2.5、一个结构体实现多…...
tomcat指定使用的jdk版本
说明 有时候需要对tomcat配置指定的jdk版本号,此时,我们可以通过以下方式进行配置 设置方式 找到tomcat的bin目录中的setclasspath.bat。如果是linux系统则是setclasspath.sh set JAVA_HOMEC:\Program Files\Java\jdk8 set JRE_HOMEC:\Program Files…...
深入浅出Diffusion模型:从原理到实践的全方位教程
I. 引言:生成式AI的黎明 – Diffusion模型是什么? 近年来,生成式人工智能(Generative AI)领域取得了爆炸性的进展,模型能够根据简单的文本提示创作出逼真的图像、连贯的文本,乃至更多令人惊叹的…...
离线语音识别方案分析
随着人工智能技术的不断发展,语音识别技术也得到了广泛的应用,从智能家居到车载系统,语音识别正在改变我们与设备的交互方式。尤其是离线语音识别,由于其在没有网络连接的情况下仍然能提供稳定、准确的语音处理能力,广…...