当前位置: 首页 > 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 …...

C++特殊类设计

文章目录 1.设计一个类&#xff0c;不能被拷贝2.设计一个类&#xff0c;只能在堆上创建对象3.设计一个类&#xff0c;只能在栈上创建对象4.设计一个类&#xff0c;不能被继承5.设计一个类&#xff0c;只能创建一个对象5.1 单例模式5.2 饿汉模式5.3 懒汉模式5.4 两种模式的析构函…...

常用的python gpu加速方法

在使用 PyCharm进行机器学习的时候&#xff0c;我们常常需要自己创建一些函数&#xff0c;这个过程中可能会浪费一些时间&#xff0c;在这里&#xff0c;我们为大家整理了一些常用的 Python加速方法&#xff0c;希望能给大家带来帮助。 在 Python中&#xff0c;我们经常需要创建…...

SpringCloud-Gateway

什么是网关&#xff1f; 网关是一个服务&#xff0c;是访问内部系统的唯一入口&#xff0c;提供内部服务的路由中转&#xff0c;额外还可以在此基础上提供如身份验证、监控、负载均衡、限流、降级与应用检测等功能。 Spring Cloud Gateway 与 Zuul 对比 zuul1.x与zuul2.x Zu…...

【C++ qt4】操作json学习笔记

本博文源于笔者在学习c qt4操作json文件&#xff0c;qt4不支持json&#xff0c;里面的函数是json.h与jsoncpp.cpp我已经附在文末&#xff0c;大家可复制重命名用&#xff0c;里面的案例可以自己拿来敲或者直接copy也行.,一定利用好目录拖动&#xff0c;不然很长。 文章目录 1.从…...

【牛客刷题专栏】0x25:JZ24 反转链表(C语言编程题)

前言 个人推荐在牛客网刷题(点击可以跳转)&#xff0c;它登陆后会保存刷题记录进度&#xff0c;重新登录时写过的题目代码不会丢失。个人刷题练习系列专栏&#xff1a;个人CSDN牛客刷题专栏。 题目来自&#xff1a;牛客/题库 / 在线编程 / 剑指offer&#xff1a; 目录 前言问…...

useEffect

useEffect 1.依赖项是什么&#xff1f;2.useEffect怎么知道依赖项数组发生了改变&#xff1f;3.依赖项的改变会导致无限渲染吗&#xff1f;4.使用 Object.is 来比较新/旧 state 是否相等&#xff0c;浅比较&#xff1f;5.为什么要用浅比较&#xff0c;而不用深比较呢&#xff1…...

如何利用splice()和slice()方法操作数组

如何利用splice&#xff08;&#xff09;和slice&#xff08;&#xff09;方法操作数组 前言splice()是什么&#xff0c;有什么用&#xff1f;怎么用&#xff1f;slice()是什么&#xff0c;有什么用&#xff1f;怎么用&#xff1f;splice和slice方法的区别小结 前言 splice&am…...

一文读懂ChatGPT(全文由ChatGPT撰写)

最近ChatGPT爆火&#xff0c;相信大家或多或少都听说过ChatGPT。到底ChatGPT是什么&#xff1f;有什么优缺点呢&#xff1f; 今天就由ChatGPT自己来给大家答疑解惑~ 全文文案来自ChatGPT&#xff01; 01 ChatGPT是什么 ChatGPT是一种基于人工智能技术的自然语言处理系统&…...

如何提升应届生职场竞争力

引言 对于应届毕业生来说&#xff0c;进入职场是既令人兴奋又具有挑战性的。面对竞争激烈的就业市场&#xff0c;提高自身的职场竞争力对于应届生来说尤为重要。本文旨在为应届生提供有价值的见解和实用的策略&#xff0c;帮助他们提升职场竞争力&#xff0c;增加在就业市场中的…...

David Silver Lecture 5: Model-Free Control

1 Introduction 1.1 内容 上一章是对一个unknown MDP进行value function的预测&#xff0c;相当于policy evaluation。这一章是对unknown MDP找到一个最优的policy&#xff0c; optimise value function. 1.2 On and Off-Policy Learning On-policy learning learn on the…...