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

妙不可言的Python之旅----(二)

Python基础语法

什么是字面量

字面量在代码中,写下来固定的,称之为字面量

常用的值类型

类型

描述

说明

数字(Number)

支持

整数(int)
浮点数(float)
复数(complex)
布尔(bool)

整数(int),如:10、-10

浮点数(float),如:13.14、-13.14

复数(complex),如:4+3j,以j结尾表示复数

布尔(bool)表达现实生活中的逻辑,即真和假,True表示真,False表示假。

True本质上是一个数字记作1,False记作0

字符串(String)

描述文本的一种数据类型

字符串(string)由任意数量的字符组成

列表(List

有序的可变序列

Python中使用最频繁的数据类型,可有序记录一堆数据

元组(Tuple

有序的不可变序列

可有序记录一堆不可变的Python数据集合

集合(Set

无序不重复集合

可无序记录一堆不重复的Python数据集合

字典(Dictionary

无序Key-Value集合

可无序记录一堆Key-Value型的Python数据集合

字符串 

字符串(string),又称文本,是由任意数量的字符如中文、英文、各类符号、数字等组成。所以叫做字符的串

如:

"兰科er "
"Eternallei学python "
" !@#$%^& "
"中秋国庆双节快乐 "

Python中,字符串需要用双引号(")包围起来,或者说被引号包围起来的,都是字符串

基于print语句完成各类字面量输出

print(字面量),如:

print(520) ,输出整数520
print(13.14) ,输出浮点数 13.14
print("兰科er") ,输出字符串:兰科er

了解注释的作用 

注释:在程序代码中对程序代码进行解释说明的文字。

作用:注释不是程序,不能被执行,只是对程序代码进行解释说明,让别人可以看懂程序代码的作用,能够大大增强程序的可读性

注释的分类

单行注释:以 #开头#右边 的所有文字当作说明,而不是真正要执行的程序,起辅助说明作用

# 单行注释
print("HelloWorld!")

多行注释: 以 一对三个双引号 引起来 (             )来解释说明一段代码的作用使用方法

"""
多行注释
诗名:悯农
作者:李绅
"""
print("锄禾日当午")
print("汗滴禾下土")
print("谁知盘中餐")
print("粒粒皆辛苦")

变量

变量:在程序运行时,能储存计算结果或能表示值的抽象概念。

简单的说,变量就是在程序运行时,记录数据用的

变量的定义格式:

变量名称 = 变量的值

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

赋值,表示将等号右侧的值,赋予左侧的变量

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

变量的特征

变量,从名字中可以看出,表示是可变的。

所以,变量的特征就是,变量存储的数据,是可以发生改变的。

变量的目的是存储运行过程的数据

存储的目的是为了:重复使用

变量命名规范

变量名

类名

方法名

不同的标识符,有不同的规范。

我们目前只接触到了:变量

见名知意,下划线命名法,英文字母全小写

变量命名规范 - 见名知意

变量的命名要做到:

明了:尽量做到,看到名字,就知道是什么意思,

简洁:尽量在确保明了的前提下,减少名字的长度。

变量命名规范 - 下划线命名法

多个单词组合变量名,使用下划线做分隔。

变量命名规范 - 英文字母全小写

命名变量中的英文字母,应全部小写。

数据类型

数据是有类型的。

目前在入门阶段,我们主要接触如下三类数据类型:

类型

描述

说明

string

字符串类型

用引号引起来的数据都是字符串

int

整型(有符号)

数字类型,存放整数 如 -1,10, 0

float

浮点型(有符号)

数字类型,存放小数 如 -3.14, 6.66

stringintfloat这三个英文单词,就是类型的标准名称。

type()语句

type(被查看类型的数据)

type()语句的使用方式

1. print语句中,直接输出类型信息

2. 用变量存储type()的结果(返回值)

他也可以查看变量中存储的数据类型

我们通过type(变量)可以输出类型,这查看的是:变量存储的数据的类型。

因为,变量无类型,但是它存储的数据有。

字符串类型的不同定义方式

双引号定义: "字符串"

单引号定义:  '字符串'

三引号定义:"""字符串"""

三引号定义法,表示在一堆三个双引号的范围内,均是字符串,要注意的是,包含范围是:从三个引号开始,到下一个三个引号结束

数据类型的转换

常见的转换语句

语句(函数)

说明

int(x)

x转换为一个整数

float(x)

x转换为一个浮点数

str(x)

将对象 x 转换为字符串

同前面学习的type()语句一样,这三个语句,都是带有结果的(返回值)我们可以用print直接输出

或用变量存储结果值

类型转换注意事项

类型转换不是万能的,毕竟强扭的瓜不甜,我们要注意:

1. 任何类型,都可以通过str(),转换成字符串

2. 字符串内必须真的是数字,才可以将字符串转换为数字

所以任何类型都可以转换成字符串,但字符串不可以随意转换成数字,字符串内必须只有数字才可以,如果是浮点数转整数会丢失精度,也就是小数部分

标识符

什么是标识符

在Python程序中,我们可以给很多东西起名字,比如:

变量的名字

方法的名字

类的名字,等等

这些名字,我们把它统一的称之为标识符,用来做内容的标识。

所以,标识符:是用户在编程的时候所使用的一系列名字,用于给变量、类、方法等命名。

标识符命名规则

Python中,标识符命名的规则主要有3类:

内容限定大小写敏感且不可使用关键字

标识符命名规则 - 内容限定

标识符命名中,只允许出现:

英文

中文

数字

下划线(_

这四类元素,其余任何内容都不被允许

需要注意的是:数字不可以开头, 不推荐使用中文

标识符命名规则 - 大小写敏感

以定义变量为例:

Jake = "杰克1"
jake = "杰克2"
print(Jake)
print(jake)

可以看到字母a的大写和小写,是完全能够区分的。

标识符命名规则 - 不可使用关键字

Python中有一系列单词,称之为关键字,关键字在Python中都有特定用途,不可以使用它们作为标识符

运算符

算术(数学)运算符

运算符

描述

实例

+

两个对象相加 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 1020次方, 输出结果 100000000000000000000

算术运算符的演示
print("1 + 2结果是:%d" %(1 + 2))
print("2 - 1结果是:%d" % (2 - 1))
print("1 * 3结果是:%d" % (1 * 3))
print("9 / 3结果是:%d" % (9 / 3))
print("9 / 2(9整除2)结果是:%d" % (9 / 2))
print("9 %% 2(9余2的结果是)结果是:%d" % (9 % 2))
print("2的 6 次方是:结果是:%d" % (2 ** 6))

输出结果如图: 

赋值运算符 

运算符

描述

实例

=

赋值运算符

= 号右边的结果 赋给 左边的变量,如 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

数据输入 

input语句(函数)

前面学习过print语句(函数),可以完成将内容(字面量、变量等)输出到屏幕上。

Python中,与之对应的还有一个input语句,用来获取键盘输入。

数据输出:print

数据输入:input

使用上也非常简单:使用input()语句可以从键盘获取输入

使用一个变量接收(存储)input语句获取的键盘输入数据即可

print("输入您的名字:")
name = input()
print(f"欢迎您:{name}先生!")
input语句获取的数据类型

刚刚试验的都是输入了字符串类型的数据。

那么如果我们输入数字类型或其它类型,

使用type()语句可以来验证一下输入内容的数据类型

可以使用:input(提示信息),用以在使用者输入内容之前显示提示信息。

v1 = input("请输入一个字符串:")
v2 = input("请输入一个整数:")
v3 = input("请输入一个浮点数:")
v4 = input("请输入一个布尔类型:")
print(f"输入的是字符串,变量类型是{type(v1)},内容是: {v1}")
print(f"输入的是整数,变量类型是{type(v2)},内容是:{v2}")
print(f"输入的是浮点数,变量类型是{type(v3)},内容是:{v3}")
print(f"输入的是布尔类型,变量类型是{type(v4)},内容是:{v4}")

结果如下,小伙伴可自行尝试: 

.要注意,无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型!

相关文章:

妙不可言的Python之旅----(二)

Python基础语法 什么是字面量 字面量:在代码中,被写下来的的固定的值,称之为字面量 常用的值类型 类型 描述 说明 数字(Number) 支持 • 整数(int) • 浮点数(float&#xff…...

cartographer(1)-运行

1.下载数据集 #1.下载数据集: mkdir /home/tang/bagfiles#2.开始二维建图 cd /home/tang/carto_ws/cartographer_detailed_comments_ws/install_isolated/source install_isolated/setup.bash rospack profile #新装的包索引地址存在ros的环境里 roslaunch ca…...

C++:模板进阶与继承

模板进阶与继承 模板进阶1.非类型的模板参数2.模板的特化2.1特化的概念2.2函数模板特化2.3类模板特化2.4全特化和偏特化2.4.1全特化2.4.2偏特化 3.模板的分离编译3.1同文件分离3.2不同文件下分离 继承1.继承的概念和定义1.1继承的概念1.2继承的定义1.2.1定义格式1.2.2继承关系和…...

vue-img-cutter 实现图片裁剪[vue 组件库]

借助 vue-img-cutter 可以在网页端实现图片裁剪功能,最终功能效果如下: 组件 npm 安装 npm install vue-img-cutter2 --save-dev # for vue2 npm install vue-img-cutter3 --save-dev # for vue3vue-img-cutter使用 template模板标签模块&#xff0c…...

手把手教你从零开始腾讯云服务器部署(连接建站教程)

使用腾讯云服务器搭建网站全流程,包括轻量应用服务器和云服务器CVM建站教程,轻量可以使用应用镜像一键建站,云服务器CVM可以通过安装宝塔面板的方式来搭建网站,腾讯云服务器网txyfwq.com分享使用腾讯云服务器建站教程,…...

微信开放平台第三方开发,实现代小程序备案申请

大家好,我是小悟 微信小程序备案整体流程总共分为五个环节:备案信息填写、平台初审、工信部短信核验、通管局审核和备案成功。 服务商可以代小程序发起备案申请。在申请小程序备案之前,需要确保小程序基本信息已填写完成、小程序至少存在一个…...

设计模式——11. 享元模式

1. 说明 享元模式(Flyweight Pattern)是一种结构型设计模式,它旨在减少系统中相似对象的内存占用或计算开销,通过共享相同的对象来达到节省资源的目的。 享元模式的核心思想是将对象的状态分为内部状态(Intrinsic State)和外部状态(Extrinsic State): 内部状态是对象…...

【LLM】主流大模型体验(文心一言 科大讯飞 字节豆包 百川 阿里通义千问 商汤商量)

note 智谱AI体验百度文心一言体验科大讯飞大模型体验字节豆包百川智能大模型阿里通义千问商汤商量简要分析:仅从测试“老婆饼为啥没有老婆”这个问题的结果来看,chatglm分点作答有条理(但第三点略有逻辑问题);字节豆包…...

CSS小计

1:设置图片随窗缩放 使用百分比 width: 100%;height: 100%; 使用vmin: 将可视区域分为100vmin width: 100vmin;height: 100vmin; 2:设置字体颜色与背景色融合 mix-blend-mode: difference 3: 设置宽度自适应 width:fit-content 4:外边距合并 当两个相领的两个容…...

机器学习:决策树

决策树 决策树是一种基于树形结构的模型,决策树从根节点开始,一步步走到叶子节点(决策),所有的数据最终都会落到叶子节点,既可以做分类也可以做回归。 特征选择 根节点的选择该用哪一个特征呢&#xff…...

xxl-job的原理(2)—调度中心管理注册信息

一、调度中心管理注册信息 1.JobApiController 执行器调用调度中心的url来实现注册、下线、回调等操作;其主要的实现类是JobApiController,调用/api/registry接口注册执行器信息,调用/api/registryRemove接口下线执行器信息,调用…...

小白入门pytorch(二)----神经网络

本文为🔗[小白入门Pytorch]学习记录博客 文章目录 前言一、神经网络的组成部分1.神经元2.神经网络层3.损失函数4.优化器 二、Pytorch构建神经网络中的网络层全连接层2.卷积层3.池化层4.循环神经网络5.转置卷积层6.归一化层7.激活函数层 三、数据加载与预处理1.数据加…...

【进阶C语言】排序函数(qsort)与模拟实现(回调函数的实例)

本章大致内容目录: 1.认识回调函数 2.排序函数qsort 3.模拟实现qsort 回调函数为C语言重要知识点,以函数指针为主要知识;下面介绍回调函数的定义、回调函数的库函数举例即库函数模拟实现。 一、回调函数 1.回调函数定义 回调函数就是一…...

CentOS 7 上编译和安装 SQLite 3.9.0

文章目录 可能报错分析详细安装过程 可能报错分析 报错如下: django.core.exceptions.ImproperlyConfigured: SQLite 3.9.0 or later is required (found 3.7.17). 原因:版本为3.7.太低了,需要升级到3.9.0至少 详细安装过程 1.安装所需的…...

[GXYCTF2019]禁止套娃 无回显 RCE 过滤__FILE__ dirname等

扫除git 通过githack 获取index.php <?php include "flag.php"; echo "flag在哪里呢&#xff1f;<br>"; if(isset($_GET[exp])){if (!preg_match(/data:\/\/|filter:\/\/|php:\/\/|phar:\/\//i, $_GET[exp])) {if(; preg_replace(/[a-z,_]\(…...

Springboot使用Aop保存接口请求日志到mysql

1、添加aop依赖 <!-- aop日志 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-aop</artifactId></dependency> 2、新建接口保存数据库的实体类RequestLog.java package com.example…...

网络安全面试题汇总(附答案)

作为从业多年的网络安全工程师&#xff0c;我深知在面试过程中面试官所关注的重点及考察的技能点。网络安全作为当前信息技术领域中非常重要的一部分&#xff0c;对于每一个从事网络安全工作的人员来说&#xff0c;不仅需要掌握一定的技术能力&#xff0c;更需要具备全面的综合…...

Centos7安装kvm,配置虚拟机网络

1.安装软件包&#xff0c;禁用防火墙&#xff08;非必须&#xff09; yum -y install qemu-kvm libvirt virt-install 1&#xff09;禁用防火墙&#xff08;非必须&#xff09; systemctl stop firewalld systemctl disable firewalld 2&#xff09;禁用NetworkManager syst…...

Javascript文件上传

什么是文件上传 文件上传包含两部分&#xff0c; 一部分是选择文件&#xff0c;包含所有相关的界面交互。一部分是网络传输&#xff0c;通过一个网络请求&#xff0c;将文件的数据携带过去&#xff0c;传递到服务器中&#xff0c;剩下的&#xff0c;在服务器中如何存储&#xf…...

golang gin——文件上传(单文件,多文件)

文件上传 单文件上传 从form-data获取文件 package uploadimport ("github.com/gin-gonic/gin""net/http" ) // 单文件上传&#xff0c;多文件上传 func Upload(c *gin.Context) {file, _ : c.FormFile("file") // file为字段名dst : "…...

css实现圆环展示百分比,根据值动态展示所占比例

代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

8k长序列建模,蛋白质语言模型Prot42仅利用目标蛋白序列即可生成高亲和力结合剂

蛋白质结合剂&#xff08;如抗体、抑制肽&#xff09;在疾病诊断、成像分析及靶向药物递送等关键场景中发挥着不可替代的作用。传统上&#xff0c;高特异性蛋白质结合剂的开发高度依赖噬菌体展示、定向进化等实验技术&#xff0c;但这类方法普遍面临资源消耗巨大、研发周期冗长…...

WEB3全栈开发——面试专业技能点P2智能合约开发(Solidity)

一、Solidity合约开发 下面是 Solidity 合约开发 的概念、代码示例及讲解&#xff0c;适合用作学习或写简历项目背景说明。 &#x1f9e0; 一、概念简介&#xff1a;Solidity 合约开发 Solidity 是一种专门为 以太坊&#xff08;Ethereum&#xff09;平台编写智能合约的高级编…...

听写流程自动化实践,轻量级教育辅助

随着智能教育工具的发展&#xff0c;越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式&#xff0c;也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建&#xff0c;…...

Mysql8 忘记密码重置,以及问题解决

1.使用免密登录 找到配置MySQL文件&#xff0c;我的文件路径是/etc/mysql/my.cnf&#xff0c;有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...

Linux nano命令的基本使用

参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时&#xff0c;显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...

Unity UGUI Button事件流程

场景结构 测试代码 public class TestBtn : MonoBehaviour {void Start(){var btn GetComponent<Button>();btn.onClick.AddListener(OnClick);}private void OnClick(){Debug.Log("666");}}当添加事件时 // 实例化一个ButtonClickedEvent的事件 [Formerl…...

Python 训练营打卡 Day 47

注意力热力图可视化 在day 46代码的基础上&#xff0c;对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...

RushDB开源程序 是现代应用程序和 AI 的即时数据库。建立在 Neo4j 之上

一、软件介绍 文末提供程序和源码下载 RushDB 改变了您处理图形数据的方式 — 不需要 Schema&#xff0c;不需要复杂的查询&#xff0c;只需推送数据即可。 二、Key Features ✨ 主要特点 Instant Setup: Be productive in seconds, not days 即时设置 &#xff1a;在几秒钟…...

以太网PHY布局布线指南

1. 简介 对于以太网布局布线遵循以下准则很重要&#xff0c;因为这将有助于减少信号发射&#xff0c;最大程度地减少噪声&#xff0c;确保器件作用&#xff0c;最大程度地减少泄漏并提高信号质量。 2. PHY设计准则 2.1 DRC错误检查 首先检查DRC规则是否设置正确&#xff0c;然…...