python基础大杂烩

news2024/11/15 19:14:20

命令提示符程序,输入python,运行python程序

代码通过解释器程序翻译给计算机去执行

命令提示符输入的python本质上就是调用D:/dev/python/python3.12.5/python.exe这个解释器程序

有python程序将输入的代码翻译成二进制的0和1,去向计算机去运行

print("hello world")

屏幕输出的hello world就是计算机运行的结果

用python解释器程序去运行python文件,就可以一下运行多行内容

在硬盘里面创建一个.py的文件,使用python命令去运行它

python.exe就是python的解释器程序

可以再python解释器环境内,执行单行代码

也可以使用python解释器程序,执行python代码文件

第三种就是用IDE来写代码,开发python程序

pycharm需要以“工程”为单元,供我们使用。想要写代码需要先创建一个工程

python中字符串需要用引号包围起来""

凡是被字符串包围起来的通通称为字符串

单行注释“# ”

多行数值“""" """”

可以将变量想象成一个盒子,可以存放内容

每一个变量都有自己的名称,称之为:变量名,也就是变量本身

每一个变量都有自己存储的值(内容),称之为:变量值

= 表示赋值

变量存储的特征是,变量存储的值是可以改变的

//取商

**次幂

linux写python也很好用,省的中英文转换

比较运算符的结果是一个布尔型 true false

true通常会被转为数字1

字符串的比较比较的是字符编码,比如utf-8

python里面是and or

不支持&& ||

= 是赋值运算符

python里面区分大小写,不区分单双引号

python里面的None相当于mysql里面的NULL

字符串的切片

列表也是一个容器:可以存储一组值

列表:可以存储一组值

普通的变量只能存储一个值

列表可以存储一组值

每一个值是一个数据,每一个值也叫一个元素

一个列表可以说有三个元素,每一个元素里面就是一个值

列表就叫一个容器,一个容器里面可以放很多元素,而且是不同种类的

比如字符串、数字、bool

java里面把列表叫数组

在python里面叫列表

列表一般情况下是用来存储相同类型的一组数据

列表的元素有下标,字符串也有下标

列表定义

列表元素的访问

往列表中添加元素

一个模块就是一个工具箱

random是随机模块

random.choice(['石头','剪刀','布']) # choice这个方法,可以随机获取列表的一个元素

random.choice('0123456789') # 获取随机数

while 循环和 if判断可以结合起来一起用,

比如打印1-100之间的全部偶数

i = 1

while i <= 100:

if i%2 == 0:

print(i)

i += 1

random.randint

其中的randint是 random + integer 随机整数

for 循环可以迭代列表、字符串、和range(范围)

range(1, 10)包括1,不包括10

len()函数,是统计队列的长度,这个队列包括列表的元素和字符串中的字符

用来获取列表长度

往列表中追加,用append()函数

列表的拼接, 列表1+列表2+列表3

sequence 序列,队列

for循环里面也是有break continue else

continue会循环结束

break 不会循环结束

只有把所有元素都执行一遍,才会执行else

切片的时候,如果是从0开始,那么0可以不写

for 循环往往结合着range

for 循环比while循环使用的频率要高,range有很大的功劳

range也支持步长

for i in 可迭代对象:

try

...

except ValueError

f 是format,允许在字符串中嵌入表达式

字符串操作函数和字符串操作方法

字符串操作在任何语言下,都是使用频率比较高的操作

函数

函数在程序里面就表示一个功能

len()/int()/float()/type()...

python提供的

调用以上的函数

系统函数/内建函数

自定义函数

解决代码重复的问题

通过函数名称加上圆括号()调用函数

参数: 往函数中所传递的数据

形参和实参

把实参给到形参,这个过程就叫传参

位置参数: 按照参数顺序传递

关键字参数: 按照参数名称传递

关键字传参的话不受顺序影响

运维用的大部分命令行,差不多都是关键字传参,像k8s的etcd数据库的备份与恢复

返回值,函数调用后返回的结果,如果没有返回值,默认就是None

那么像运维过程中,代码执行后的返回值,一般就设置为,执行ok的话,就是返回值是0,如果有报错的话,返回值就是1。这里说错了,是退出码,不是返回值

返回什么值,函数里面就保存什么值

return

return 有两个结果,一个是返回结果,一个是终止函数

如果return单写,就是结束函数的意思,并不是为了返回结果

return返回值的目的,是为了再次使用它,如果不用return,而用print,就不能再使用了

有了参数以后,可以强化函数的功能

模块就是一个工具箱

choice就是random模块内部提供的一个函数

random,string模块,是python的内嵌模块

是python解释器的库里面的内嵌模块

可以直接导入进来使用的模块

模块就是一个python文件

模块里面有很多变量,已经定义好的,可以直接使用

导入一个模块,就是导入了一个工具箱

这个模块里面有很多的函数和变量

模块:就是一个python文件

导入模块后,可以使用模块中提供的函数或者变量

导入模块的目的,就是使用模块中的函数或者变量

python里面,一共有三种模块

ansible里面用了各种各样模块,也跟这个差不多是一个意思,因为ansible也是python写的

pip3 install xxx # 安装第三方模块

from 模块 import 函数和变量

strftime string format time 格式化 把时间格式化成字符串(年月日时分秒)

strptime string parse time 语法分析 把字符串转成结构化时间,一堆英文

结构化时间 一堆英文 struc_time 9个元素的元组

字符串 年月日时分秒 时间的字符串表示形式 用于显示

时间戳 十几亿 计算机元年到现在的秒数 用于存储、传输

按照长度读取文件

按照行读取文件

读取文件,如果文件大,用while循环,因为不占用内存

如果文件不大,可以用for循环,因为for循环是先把这个文件的数据拉到内存中的

读取文件的流程

1. 打开文件

2. 用循环去读

3. 关闭文件

时间的比较,可以用格式化时间的格式比较,也可以用时间戳的格式比较

encoding 使编码

enable 使能够

文件操作:打开文件,读、写,循环读,然后写,完成文件拷贝

容器

什么是容器

是存数据的

变量也可以存数据,所以变量也是一种容器

变量只能存储一个数据

如果要存储一组数据,要用列表

列表可以作为一个数据哦让你去,存放一组数据

.append('元素') 是往列表的最后添加

.insert(2,'小鹏') 是往指定下标位置插入

.extend(['', '']) 是扩展多个元素

.remove(‘元素’) 删除

.pop(下标号) 删除

.pop() 默认删除末尾元素

.clear() 清空列表

del 列表名[下标号] 删除元素

len(列表名) 获取列表长度

.count('元素') 统计指定元素的数量

列表是使用python的时候,操作频率最高的一种数据

元祖是和列表很相似的一种容器

定义元祖用()圆括号

定义列表用[] 方括号

定义字典用{} 大括号

通过类创建对象

通过class 创建 object

类的对象的属性

每个对象中,都有自己的独立的属性

用self解决,不同对象的调用各自属性的问题

属性和方法

方法是函数

属性是变量

类有一个,对象可以有多个

不同对象的属性,可能各不相同,就是各个对象是独立的个体,每个对象有自己的样子

类中定义的方法和属性

方法就是函数

属性就是变量

面向对象编程中,类和对象的关系

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

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

相关文章

嵌入式硬件实战提升篇(一)-泰山派RK3566制作多功能小手机

引言&#xff1a;主要针对于嵌入式全栈内容的知识点汇总并对于linux等相关驱动知识点进行串联&#xff0c;用大家参考学习&#xff0c;并用到了嘉立创提供的泰山派RK3566作为学习的主控。 实物演示如下所示&#xff1a; 目录 一、硬件设计 1.转接电路 2.背光电路 3.音频接…

用两行命令快速搭建深度学习环境(Docker/torch2.5.1+cu118/命令行美化+插件),包含完整的 Docker 安装步骤

深度学习环境的配置过于繁琐&#xff0c;所以我制作了两个基础的镜像&#xff0c;希望可以帮助大家节省时间&#xff0c;你可以选择其中一种进行安装&#xff0c;版本说明&#xff1a; base 版本基于 pytorch/pytorch:2.5.1-cuda11.8-cudnn9-devel&#xff0c;默认 python 版本…

11个c语言编程练习题

0. 钞票和硬币 money.c 读取一个带有两个小数位的浮点数&#xff0c;代表货币价值。将该值分解为多种钞票和硬币的和&#xff0c;要求使用的钞票和硬币的总数量尽可能少。 货币面值有100&#xff0c;50&#xff0c;20&#xff0c;10&#xff0c;5&#xff0c;1&#xff0c;0.…

LaTeX之四:如何兼容中文(上手中文简历和中文论文)、在win/mac上安装新字体。

改成中文版 如果你已经修改了.cls文件和主文档&#xff0c;但编译后的PDF仍然显示英文版本&#xff0c;可能有以下几个原因&#xff1a; 编译器问题&#xff1a;确保你使用的是XeLaTeX或LuaLaTeX进行编译&#xff0c;因为它们对Unicode和中文支持更好。你可以在你的LaTeX编辑器…

K8S如何基于Istio实现全链路HTTPS

K8S如何基于Istio实现全链路HTTPS Istio 简介Istio 是什么?为什么选择 Istio?Istio 的核心概念Service Mesh(服务网格)Data Plane(数据平面)Sidecar Mode(边车模式)Ambient Mode(环境模式)Control Plane(控制平面)Istio 的架构与组件Envoy ProxyIstiod其他组件Istio 的流量管…

安全见闻-泷羽sec课程笔记

编程语言 C语言&#xff1a;一种通用的、面向过程的编程语言&#xff0c;广泛应用于系统软件和嵌入式开发。 C:在C语言基础上发展而来&#xff0c;支持面向对象编程&#xff0c;常用于尊戏开发、高性能计算等领域。 Java:一种广泛使用的面问对象编程语言&#xff0c;具有跨平台…

论文笔记(五十六)VIPose: Real-time Visual-Inertial 6D Object Pose Tracking

VIPose: Real-time Visual-Inertial 6D Object Pose Tracking 文章概括摘要I. INTRODACTIONII. 相关工作III. APPROACHA. 姿态跟踪工作流程B. VIPose网络 文章概括 引用&#xff1a; inproceedings{ge2021vipose,title{Vipose: Real-time visual-inertial 6d object pose tra…

LeetCode 热题100(八)【二叉树】(3)

目录 8.11二叉树展开为链表&#xff08;中等&#xff09; 8.12从前序与中序遍历序列构造二叉树&#xff08;中等&#xff09; 8.13路径总和III&#xff08;中等&#xff09; 8.14二叉树的最近公共祖先&#xff08;中等&#xff09; 8.15二叉树中的最大路径和&#xff08;困…

【C语言】Union

一.Union的用法 1.什么是Union? union 共用体名{ 成员列表 }; union&#xff0c;“联合体、共用体”&#xff0c;在某种程度上类似结构体struct的一种数据结构&#xff0c;共用体(union)和结构体(struct)同样可以包含很多种数据类型和变量。 2.为什么使用union&#xff1…

Postgresql源码(138)alter table增加列的执行流程分析

alter table 逻辑比较繁琐&#xff0c;但并不复杂&#xff0c;这里以增加列为例简单梳理流程。 测试用例 drop table t_echo; create table t_echo(a int,b int); insert into t_echo select t.i, t.i*10 from generate_series(1,10) t(i); alter table t_echo add c varchar…

MobaXterm 软件及如何设置取消自动断开连接

MobaXterm 软件及如何设置取消自动断开连接 背景软件资料取消自动断开连接找打设置找到SSH Setting 背景 其实很容易找到类似的资料, 主要为了简单的记录一下, 还是写一下这个博客吧, 也算是自己的输出了. 当练习打字也行吧, 反正自己打字也是一坨, 打字太慢了. 软件资料 官…

【代码审计】常见漏洞专项审计-业务逻辑漏洞审计

❤️博客主页&#xff1a; iknow181 &#x1f525;系列专栏&#xff1a; 网络安全、 Python、JavaSE、JavaWeb、CCNP &#x1f389;欢迎大家点赞&#x1f44d;收藏⭐评论✍ 0x01 漏洞介绍 1、 原理 业务逻辑漏洞是一类特殊的安全漏洞&#xff0c;业务逻辑漏洞属于设计漏洞而非实…

YOLOv11实战垃圾分类

本文采用YOLOv11作为核心算法框架&#xff0c;结合PyQt5构建用户界面&#xff0c;使用Python3进行开发。YOLOv11以其高效的特征提取能力&#xff0c;在多个图像分类任务中展现出卓越性能。本研究针对4种垃圾数据集进行训练和优化&#xff0c;该数据集包含丰富的垃圾图像样本&am…

Kafka集群中数据的存储是按照什么方式存储的?

1&#xff09;Topic 数据的存储机制 Topic是逻辑上的概念&#xff0c;而partition是物理上的概念&#xff0c;每个partition对应于一个log文件&#xff0c;该log文件中存储的就是Producer生产的数据。Producer生产的数据会被不断追加到该log文件末端&#xff0c;为防止log文件…

渗透测试靶场 - vulhub -CVE漏洞 Weblogic 任意文件上传漏洞(CVE-2018-2894) 漏洞讲解 漏洞复现 亲测步骤能通过哟

漏洞说明 Weblogic管理端未授权的两个页面存在任意上传jsp文件漏洞&#xff0c;可直接获取服务器权限。 两个页面 /ws_utc/begin.do /ws_utc/config.do Oracle 在2018年7月更新中&#xff0c;修复了Weblogic Web Service Test Page中一处任意文件上传漏洞&#xff0c; Web Se…

使用 PyTorch 实现 AlexNet 进行 MNIST 图像分类

AlexNet 是一种经典的深度学习模型&#xff0c;它在 2012 年的 ImageNet 图像分类比赛中大放异彩&#xff0c;彻底改变了计算机视觉领域的格局。AlexNet 的核心创新包括使用深度卷积神经网络&#xff08;CNN&#xff09;来处理图像&#xff0c;并采用了多个先进的技术如 ReLU 激…

基于图的去中心化社会推荐过滤器

&#x1f3e1;作者主页&#xff1a;点击&#xff01; &#x1f916;编程探索专栏&#xff1a;点击&#xff01; ⏰️创作时间&#xff1a;2024年11月11日19点20分 点击开启你的论文编程之旅https://www.aspiringcode.com/content?id17176636216843&uideba758a1550b46bb…

深度学习模型评价指标介绍

模型评价指标 模型评价指标1.混淆矩阵2.Overall Accuracy3.Average accuracy4.Kappa系数5.Recall6.Precision7.F18.PR曲线9.置信度10.IOU11.AP12.mAP 模型评价指标 在我们学习机器学习以及深度学习&#xff0c;甚至在计算机视觉领域&#xff0c;我们不可避免的要利用一些指标评…

k8s 1.28.2 集群部署 docker registry 接入 MinIO 存储

文章目录 [toc]docker registry 部署生成 htpasswd 文件生成 secret 文件 生成 registry 配置文件创建 service创建 statefulset创建 ingress验证 docker registry docker registry 监控docker registry ui docker registry dockerfile docker registry 配置文件 S3 storage dr…

【自用】0-1背包问题与完全背包问题的Java实现

引言 背包问题是计算机科学领域的一个经典优化问题&#xff0c;分为多种类型&#xff0c;其中最常见的是0-1背包问题和完全背包问题。这两种问题的核心在于如何在有限的空间内最大化收益&#xff0c;但它们之间存在一些关键的区别&#xff1a;0-1背包问题允许每个物品只能选择…