当前位置: 首页 > news >正文

Python——1

一、注释

(1)单行注释:#需要注释的内容(#)

(2)多行注释:'''需要注释的内容'''(三引号)

 二、变量及变量类型

1.变量

语法定义:变量名  =  变量值(这里的 = 作用为赋值)

变量名/标识符的命名规则:

        a.数字不能开头,且用字符、数字、字母组成;

        b.严格区分大小写;

        c.不能使用关键字

        关键字:一些标有特殊功能的字,可使用以下代码查看:

import keyword
print(keyword,kwlist)

命名规范:

        a.有意义(易读性);

        b.驼峰命名法

                b.1小驼峰命名法:第一个单词的首字母小写,后续的单词的首字母大写;

                b.2大驼峰命名法:每一个单词的首字母均用大写;

        c.以下划线“ _ ”来连接所以单词。

2.变量的多次赋值

        当多次赋值之后,变量名会指向新的空间。

3.变量类型

        int、float、bool、str、list、tuple、dict。可以用 type() 查看数据类型。

(1)int——整数类型

        牵涉到进制内容。python中用 0b 的前缀表示二进制, 0o 表示八进制, 0x 表示十六进制。十进制转换二进制并且保存为字符串类型:

a = 985print(bin(a))   #0b1111011001(十进制转二进制)
print(oct(a))   #0o1731(十进制转八进制)
print(hex(a))   #0x3d9(十进制转十六进制)

(2)float——浮点类型

        a.由整数部分+小数部分构成;

        b.float存储不准确(由于计算机是以二进制存储数据的,底层问题)

                使用浮点数进行运算时,可能出现小数位数不确定的情况

        解决办法:导入decimal:from decimal import Decimal

print(1.1+2.2)  # 3.3000000000000003
print(1.1+2.1)  # 3.2# 解决方法:导入decimal
from decimal import Decimal
print(Decimal('1.1')+Decimal('2.2'))    # 3.3

(3)bool——布尔型

        要不为True,要不为False;

        可转换位数字:True -> 1,False -> 0。

(4)str——字符串

        不可变的字符序列;

        可用单引号、双引号、三引号定义。

4.类型转换

        不同类型的数据在进行拼接时需要进行类型转换。

(1)str() :其他数据类型 -> 字符串

        可用引号转换。例如 str(123) == '123'。

(2)int() :其他数据类型 -> 整数

        文字类和小数类字符串不可转换成整数;

        浮点数转换成整数:直接抹零。

(3)float() :其他数据类型 -> 浮点

        文字类不可转换成浮点;

        整数转换成浮点:直接加.0。

三、运算符

1.input() 函数

        变量名 = input('......')(“......”表示需要输入的内容,最终得到的是字符串类型的变量

2.算术运算符

        +、-、*、/、//、%、**、()

(1)//(整除运算符)

        结果取商的整数部分。需注意的是当遇到一正一负的整除运算时,结果向下取整。例如 -9//4=-3。 

(2)%(取余运算符)

        结果取商的余数。需注意的是当遇到一正一负的取余运算时,余数用公式计算:

余数 = 被除数 - 除数*商

(3)**(幂运算)

(4)()——可用于提高运算优先级

(5)当算术运算符用于字符串时,需注意:

        a.两字符串使用 "+" ,表示将两字符串拼接成一个字符串;

        b.数字 + 字符串,则报错;

        c.字符串 * 整数,则表示重复该整数遍字符串。

3.赋值运算符

        =、+=、-=、*=、/=、//=、**=、%=

        支持系列解包赋值。例如

a,b,c = 1,2,3
print(a,b,c)    #1 2 3

4.比较运算符

        ==、!=、>、>=、<、<=、is、is not(结果均为布尔值)

(1)==、!=、>、>=、<、<=

        比较的是变量的值即value。

(2)is、is not

        比较的是变量的id。

a = 10
b = 10
print(a == b)   #True
print(a is b)   #True
print(a is not b)   #False#但是以下为例外:
list1 = [1,2,3]
list2 = [1,2,3]
print(list1 == list2)   #True
print(list1 is list2)   #False

5.逻辑运算符(布尔运算符)

        and、or、not、in、not in

(1)逻辑运算符的短路问题

a = 20a > 10 and print('Hello World')     #Hello World
a < 10 and print('Hello World')     #无输出a > 10 or print('你好世界')         #无输出
a < 10 or print('你好世界')         #你好世界str1 = 'Hello World'
print('H' in str1)      #True
print('l' not in str1)  #False

6.位运算符

        &、|、<<、>>(需要将数据转换成二进制,再计算)

(1)&——按位与

        同为1为1,否则为0。

(2)|——按位或

        只要有一个为1,则为1。

(3)<<——左移

        高位溢出舍弃,低位补0。

(4)>>——右移

        低位溢出舍弃,高位补0。

7.运算符优先级

 三、结构

1.对象的布尔值

        Python一切皆对象,所以对象均有一个布尔值。获取对象布尔值,可以使用内置函数bool()。以下对象的布尔值均为False:False、数值0、None、空字符串、空列表、空元组、空字典、空集合。除此之外,其余对象的布尔值均为True。

2.选择结构

        程序根据判断条件的布尔值选择性地执行部分代码。

(1)单分支结构

if 条件表达式:

        条件执行体

(2)双分支结构

if 条件表达式:

        条件执行体1

else:

        条件执行体2

(3)多分支结构

if 条件表达式1:

        条件执行体1

elif 条件表达式2:

        条件执行体2

            ...

elif 条件表达式n:

        条件执行体n

else: 

        条件执行体n+1

(4)嵌套if

if 条件表达式1:

        if 内嵌条件表达式1:

                内嵌条件执行体1

        else:

                内嵌条件执行体2

else: 

        条件执行体1

(5)条件表达式

        实质上就是 if......else 的缩写。

x  if  判断条件  else  y

注:
a.判断条件布尔值为True,返回x;

b.判断条件布尔值为False,返回y。

3.pass语句

        什么都不做,只是一个占位符,用到需要写语句的地方。

相关文章:

Python——1

一、注释 &#xff08;1&#xff09;单行注释&#xff1a;#需要注释的内容&#xff08;#&#xff09; &#xff08;2&#xff09;多行注释&#xff1a;需要注释的内容&#xff08;三引号&#xff09; 二、变量及变量类型 1.变量 语法定义&#xff1a;变量名 变量值&#…...

bgp团体属性配置案例一

RouterA的配置 sysname RouterA interface GigabitEthernet1/0/0 ip address 192.168.0.1 255.255.255.0 interface LoopBack0 ip address 1.1.1.1 255.255.255.255 bgp 10 router-id 1.1.1.1 //Router ID&#xff0c;建议配置为LoopBack0的IP地址 peer 192.168.0.2 as-number …...

mybatis-plus配置日志实现方式

Mybatis-plus是一个基于Mybatis的强大框架&#xff0c;可以帮助开发者快速地开发高质量的数据库应用程序。Mybatis-plus提供了许多配置项&#xff0c;其中一个重要的配置项是log-impl。 log-impl配置项定义了Mybatis-plus的日志实现方式&#xff0c;有两种可选的方式&#xff…...

Cy5.5 NHS ester 氨基反应性荧光染料Cyanine5.5 -NHS

Cy5.5 NHS ester是一种常用的荧光探针&#xff0c;可用于细胞或组织的荧光标记&#xff0c;也可用于蛋白质或核酸的标记。Cy5.5 NHS ester的荧光峰位于近红外区域&#xff0c;波长为675nm&#xff0c;具有较强的荧光强度和较长的荧光寿命&#xff0c;适合于生物分子在体内或组织…...

深度思考:在 AI 时代,你会被放大一千倍的能力是什么?

Datawhale干货 作者&#xff1a;艾芙&#xff0c;复旦大学&#xff0c;百姓AI教育负责人 前言 大家晚上好&#xff0c;我是艾芙&#xff0c;百姓 AI 的 AI 教育负责人。 先做一下自我介绍&#xff0c;我是一个在技术圈和教育圈反复横跳的斜杠中年了。大约在 5 年前&#xff0c…...

蚂蚁实时低代码研发和流批一体的应用实践

摘要&#xff1a;本文整理自蚂蚁实时数仓架构师马年圣&#xff0c;在 Flink Forward Asia 2022 流批一体专场的分享。本篇内容主要分为四个部分&#xff1a; 实时应用场景与研发体系低代码研发流批一体规划展望 点击查看原文视频 & 演讲PPT 一、实时应用场景与研发体系 蚂蚁…...

5 创建映射

5 映射 上边章节安装了ik分词器&#xff0c;如果在索引和搜索时去使用ik分词器呢&#xff1f;如何指定其它类型的field&#xff0c;比如日期类型、数 值类型等。 本章节学习各种映射类型及映射维护方法。 5.1 映射维护方法 1、查询所有索引的映射&#xff1a; GET&#xf…...

windows注册表参数(%1,%2,%v) windows注册表是不区分大小写的.

windows注册表是不区分大小写的. 参数 含义 %1 文件路径 %2 系统默认的打印机 %3 文件扇区 %4 端口 %D 文件路径 %L 文件长路径 %V 文件路径 %W 当前文件的父目录的路径 参考:https://blog.csdn.net/meng_suiga/article/details/79485855 ————…...

基于SpringBoot的大学生租房系统

背景 大学生租房系统设计的目的是建立一个高效的平台&#xff0c;采用简洁高效的Java语言与Mysql数据库等技术&#xff0c;设计和开发了本大学生租房系统设计。该系统主要实现了用户和房主通过系统注册用户&#xff0c;登录系统后能够编辑自己的个人信息、查看首页&#xff0c…...

NetApp 利用适用于混合云的实时解决方案解决芯片设计方面的数据管理挑战

电子设计自动化 (EDA) 成本持续增加&#xff0c;而周期时间缩短。这些都为 EDA 设计带来了前所未有的挑战&#xff0c;对现代高性能工作流的需求变得从未如此巨大。 联想凌拓芯片设计行业存储解决方案及最佳实践 联想凌拓芯片行业数据存储与管理解决方案&#xff0c;针对EDA…...

Rust + WASM 入门

一、参考资料 参考官方技术文档 https://rustwasm.github.io/ 二、安装脚手架 cargo-generate # cargo-generate 用于快速生成 WASM 项目的脚手架&#xff08;类似 create-react-app&#xff09; cargo install cargo-generate 三、下载安装 wasm-pack.exe 打包工具 双击安装…...

【操作系统】内存空间

最小的操作系统Hello world 想要pmap这个进程&#xff0c;需要进程号 但是这个进程在启动的一瞬间就执行完了 用GDB把程序暂停下来&#xff0c;然后用pmap观察地址空间 用info inferiors得到gdb里的进程号 ro 可读 &#xff1a;只读数据 rx 可读可执行 &#xff1a;代码 rw 可…...

详解静态、动态代理以及应用场景

一篇不太一样的代理模式详解&#xff0c;仔细阅读&#xff0c;你一定会获取不一样的代理见解&#xff0c;而不是人云亦云。 查看了社区里关于代理模式描述&#xff0c;发现很多博客千篇一律甚至存在共性错误&#xff0c;写此文提出自己对代理的见解。 静态代理动态代理 JDKCGLi…...

ChatGLM-6B本地cpu部署

ChatGLM-6B是清华团队研发的机器人对话系统&#xff0c;类似ChatGPT&#xff0c;但是实际相差很多&#xff0c;可以当作一个简单的ChatGPT。 ChatGLM部署默认是支持GPU加速&#xff0c;内存需要32G以上。普通的机器无法运行。但是可以部署本地cpu版本。 本地部署&#xff0c;需…...

算法修炼之练气篇——练气七层

博主&#xff1a;命运之光 专栏&#xff1a;算法修炼之练气篇 前言&#xff1a;每天练习五道题&#xff0c;炼气篇大概会练习200道题左右&#xff0c;题目有C语言网上的题&#xff0c;也有洛谷上面的题&#xff0c;题目简单适合新手入门。&#xff08;代码都是命运之光自己写的…...

vscode常用快捷方式

基本编辑 Ctrl X&#xff1a;剪切当前行或选定内容 Ctrl C&#xff1a;复制当前行或选定内容 Ctrl V&#xff1a;粘贴当前行或剪切板内容 Ctrl Z&#xff1a;撤销上一步操作 Ctrl Y&#xff1a;恢复上一步撤销的操作 Ctrl F&#xff1a;在当前文件中查找内容 Ctrl H&am…...

如何压缩mp3文件大小,5分钟学会4种方法

如何压缩mp3文件大小&#xff1f;我们在开车的时候都很喜欢听歌&#xff0c;一般歌曲库里的mp3文件都很多&#xff0c;小编的就有上千首。如果我们还想要增加更多mp3文件&#xff0c;有时候就会出现内存不足的情况啦。所以我们需要压缩mp3文件大小&#xff0c;这样才能在我们手…...

从0搭建Vue3组件库(十二):引入现代前端测试框架 Vitest

Vitest 是个高性能的前端单元测试框架,它的用法其实和 Jest 差不多,但是它的性能要优于 Jest 不少,还提供了很好的 ESM 支持,同时对于使用 vite 作为构建工具的项目来说有一个好处就是可以公用同一个配置文件vite.config.js。因此本项目将会使用 Vitest 作为测试框架。 安装 …...

使用Handler创建一个Android秒表应用

本文所有代码都放在以下链接中&#xff1a;https://github.com/MADMAX110/Stopwatch 0、应用是一个有活动、布局和其他资源组成的集合。其中一个活动是应用的主活动。每个应用都有一个主活动&#xff0c;在文件AndroidManifest.xml中指定。 1、默认地&#xff0c;每个应用都在…...

node-sass安装失败解决方法总结

node-sass 安装失败的原因 npm 安装 node-sass 依赖时&#xff0c;会从 github.com 上下载 .node 文件。由于国内网络环境的问题&#xff0c;这个下载时间可能会很长&#xff0c;甚至导致超时失败。 解决方法一&#xff1a;使用淘宝镜像源&#xff08;推荐&#xff09; npm …...

黑马Mybatis

Mybatis 表现层&#xff1a;页面展示 业务层&#xff1a;逻辑处理 持久层&#xff1a;持久数据化保存 在这里插入图片描述 Mybatis快速入门 ![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/6501c2109c4442118ceb6014725e48e4.png //logback.xml <?xml ver…...

PHP和Node.js哪个更爽?

先说结论&#xff0c;rust完胜。 php&#xff1a;laravel&#xff0c;swoole&#xff0c;webman&#xff0c;最开始在苏宁的时候写了几年php&#xff0c;当时觉得php真的是世界上最好的语言&#xff0c;因为当初活在舒适圈里&#xff0c;不愿意跳出来&#xff0c;就好比当初活在…...

为什么需要建设工程项目管理?工程项目管理有哪些亮点功能?

在建筑行业&#xff0c;项目管理的重要性不言而喻。随着工程规模的扩大、技术复杂度的提升&#xff0c;传统的管理模式已经难以满足现代工程的需求。过去&#xff0c;许多企业依赖手工记录、口头沟通和分散的信息管理&#xff0c;导致效率低下、成本失控、风险频发。例如&#…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法&#xff0c;用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理&#xff0c;能够自动确定一个阈值&#xff0c;将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

服务器--宝塔命令

一、宝塔面板安装命令 ⚠️ 必须使用 root 用户 或 sudo 权限执行&#xff01; sudo su - 1. CentOS 系统&#xff1a; yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh2. Ubuntu / Debian 系统…...

AI+无人机如何守护濒危物种?YOLOv8实现95%精准识别

【导读】 野生动物监测在理解和保护生态系统中发挥着至关重要的作用。然而&#xff0c;传统的野生动物观察方法往往耗时耗力、成本高昂且范围有限。无人机的出现为野生动物监测提供了有前景的替代方案&#xff0c;能够实现大范围覆盖并远程采集数据。尽管具备这些优势&#xf…...

【JVM】Java虚拟机(二)——垃圾回收

目录 一、如何判断对象可以回收 &#xff08;一&#xff09;引用计数法 &#xff08;二&#xff09;可达性分析算法 二、垃圾回收算法 &#xff08;一&#xff09;标记清除 &#xff08;二&#xff09;标记整理 &#xff08;三&#xff09;复制 &#xff08;四&#xff…...

【网络安全】开源系统getshell漏洞挖掘

审计过程&#xff1a; 在入口文件admin/index.php中&#xff1a; 用户可以通过m,c,a等参数控制加载的文件和方法&#xff0c;在app/system/entrance.php中存在重点代码&#xff1a; 当M_TYPE system并且M_MODULE include时&#xff0c;会设置常量PATH_OWN_FILE为PATH_APP.M_T…...

【 java 虚拟机知识 第一篇 】

目录 1.内存模型 1.1.JVM内存模型的介绍 1.2.堆和栈的区别 1.3.栈的存储细节 1.4.堆的部分 1.5.程序计数器的作用 1.6.方法区的内容 1.7.字符串池 1.8.引用类型 1.9.内存泄漏与内存溢出 1.10.会出现内存溢出的结构 1.内存模型 1.1.JVM内存模型的介绍 内存模型主要分…...

高抗扰度汽车光耦合器的特性

晶台光电推出的125℃光耦合器系列产品&#xff08;包括KL357NU、KL3H7U和KL817U&#xff09;&#xff0c;专为高温环境下的汽车应用设计&#xff0c;具备以下核心优势和技术特点&#xff1a; 一、技术特性分析 高温稳定性 采用先进的LED技术和优化的IC设计&#xff0c;确保在…...