Python语言基础学习(上)

目录

一、常量和表达式

二、变量和类型

2.1  认识变量

2.2  定义变量

2.3  变量类型

   1、整数 int

2、浮点数(小数)float

3、字符串 str

4、布尔类型

2.4 类型转换

三、注释

3.1 单行注释

3.2 文档注释(或者多行注释)

四、输入输出

4.1 通过控制台输入

4.2 通过控制台输出

五、运算符

5.1 算术运算符

5.2 关系运算符

5.3 逻辑运算符

5.4 赋值运算符


一、常量和表达式

1 + 2 - 3 在编程语言中称为 表达式 ,   其运算结果 称为 表达式的返回值
其中 1 , 2 , 3 这种称为 字面值常量 , + - * / 这种称为 运算符 或者 操作符 .
(**表示求次方,如a**2表示a的平方,a**3表示a的3次方,a**b表示a的b次方)

print(1 + 2 - 3)
print(1 * 2 / 3)
print(1 + 2 * 3)

注意: 熟悉 C / Java 的同学可能认为, 2 / 3 结果为 0 (小数部分被截断). 但是在 Python 中得到的结果则是一个小数. 更符合日常使用的直觉

二、变量和类型

2.1  认识变量

变量就是把一个数值使用一个变量名来表示,这个变量名我们就通常叫做变量。

例如求四个分数的平均值:给定四个分数, 67.5, 89.0, 12.9, 32.2 , 编写代码, 求这四个分数的平均值。

avg = (67.5 + 89.0 + 12.9 + 32.2) / 4
print(avg)

注意:avg在这个表达式中就是一个变量

2.2  定义变量

       a = 10
创建变量的语句非常简单 , 其中
a 为变量名 . 当我们创建很多个变量的时候 , 就可以用名字来进行区分 .
= 为赋值运算符 , 表示把 = 右侧的数据放到 = 左侧的空间中 .
定义变量的名字必须遵守规则:
  1. 变量名由数字字母下划线构成.
  2. 数字不能开头.
  3. 变量名不能和 "关键字" 重复.
  4. 变量名大小写敏感. num 和 Num 是两个不同的变量名.

2.3  变量类型

       在Python中,变量类型主要有整数 int、浮点数(小数)float、字符串 str、布尔类型

   1、整数 int

a = 10
print(type(a))# print和type都是Python里面的内置函数,print为打印函数,type为查看变量类型

2、浮点数(小数)float

a = 10.25
print(type(a))

注意点:Python 的小数只有 float 一种类型, 没有 double 类型。但是实际上 Python 的 float 就相当于 C++ / Java 的 double, 表示双精度浮点数

3、字符串 str

使用 ' ' 或者 " " 引起来的 称为 字符串, 可以用来表示文本。
a = "你好啊!"
print(type(a))#可以使用 len 函数来获取字符串的长度,只能用于字符串
a = 'hello'
print(len(a))
注意 : 在 Python 中, 单引号构成的字符串和双引号构成的字符串, 没有区别 . 'hello' "hello" 是 完全等价的.
       
        1、可以使用 + 针对两个字符串进行拼接 .
        2、Python中字符串拼接只能字符串与字符串拼接,不能字符串与整数、浮点数、布尔类型进行拼接,否则会报错
异常注意点:

4、布尔类型

布尔类型是一个特殊的类型 , 取值只有两种 , True ( ) False ( )。
注意点:Java、C++中与Python的布尔类型不同。
             Java、C++的布尔类型是true、false,Python的布尔类型是True、Flase  (Python 的首字母需要大写)
a = True
print(type(a))

2.4 类型转换

在Python里面,如果想要把一个整数或者浮点数转换为字符串,则使用str(), 字符串转换为整数,则使用int(),  字符串转换为浮点数,则使用float()

a = 1234
print(type(a)) # 整数
a = str(a)  # 整数转换为字符串
print(type(a)) # 字符串b = 123.36
print(type(b))
b = str(b)  # 浮点数转换为字符串
print(type(b))c = "123"
c = int(c)
print(type(c))

三、注释

3.1 单行注释

使用 # 开头的行都是注释 .

3.2 文档注释(或者多行注释)

  • 可以包含多行内容,
  • 一般放在 文件/函数/类 的开头.
  • """ 或者 ''' 均可 (等价)
# 这是单行注释"""
多行注释
"""'''
多行注释
'''

四、输入输出

4.1 通过控制台输入

python 使用 input 函数 , 从控制台读取用户的输入, 此时 input 输入的数据默认 str类型 。( 牢记
如果需要将输入的数据转化为int类型或者float类型,就可以使用 类型转换方法 进行转换, 使用int()或者float()

4.2 通过控制台输出

Python 使用 print 函数 输出到控制台。
若我们想要输出一个字符串加变量的形式输出到控制台上,此时就可以使用    f'num = {num}形式。

五、运算符

5.1 算术运算符

+ (加)、 - (减)  、 * (乘) 、 / (除) 、 % (取模)、 ** (求乘方)、 // (整除)    这种进行算术运算的运算符 , 称为 算术运算符。

注意点1: /  中不能用 0 作为除数,否则会 抛出异常

print(10 / 0)

注意点2:  整数 / 整数   结果可能是小数. 而不会截断 (与Java和C++有区别,注意区分

注意点3:  ** 是求乘方不光能算整数次方, 还能算小数次方

注意点4: // 是整除,  整数除以整数, 结果还是整数(舍弃小数部分, 向下取整. 不是四舍五入)

5.2 关系运算符

<、<=、 >、 >=、 ==、 !=   这一系列的运算符称为 关系运算符, 它们是在比较操作数之间的关系.

  • <= "小于等于"
  • >= "大于等于"
  • == "等于"
  • != "不等于"
(1) 如果关系符合 , 则表达式返回 True. 如果关系不符合 , 则表达式返回 False
a = 10
b = 20
print(a < b)
print(a <= b)
print(a > b)
print(a >= b)
print(a == b)
print(a != b)

(2) 关系运算符不光针对整数 / 浮点数进行比较 , 还能针对字符串进行比较。
字符串比较大小规则是 "字典序",Java里面的字典序比较是使用compareTo()方法
a = 'hello'
b = 'world'
print(a < b)
print(a <= b)
print(a > b)
print(a >= b)
print(a == b)
print(a != b)

(3) 对于浮点数来说 , 不要使用 == 判定相等, 因为 浮点数相加有小数精度问题需要考虑

print(0.1 + 0.2 == 0.3)     结果是False

注意 : 浮点数在计算机中的表示并不是精确的 ! 在计算过程中 , 就容易出现非常小的误差 .
print(0.1)
print(0.2)
print(0.3)
print(0.1 + 0.2)

5.3 逻辑运算符

Python中 and 、or、 not 这一系列的运算符称为 逻辑运算符 . 在 Java和C++中逻辑运算符为 && 、|| 、! ,我们需要注意区别。

  • and 并且. 两侧操作数均为 True, 最终结果为 True. 否则为 False. (一假则假)
  • or 或者. 两侧操作数均为 False, 最终结果为 False. 否则为 True. (一真则真)
  • not 逻辑取反. 操作数本身为 True, 则返回 False. 本身为 False, 则返回 True

  • 对于 and, 如果左侧表达式为 False, 则整体一定为 False, 右侧表达式不再执行.
  • 对于 or, 如果左侧表达式为 True, 则整体一定为 True, 右侧表达式不再执行.

5.4 赋值运算符

(1)   = 的使用
= 表示赋值 . 这个我们已经用过很多次了, 注意和 == 区分。 = 表示把数值进行赋值,==表示判断数值是否相等
链式赋值
a = b = c = 10
多元赋值
a,b,c = 10,20,30

交换两个变量:

#方式一
a = 10
b = 20
tmp = a
a = b
b = tmp
print(a,b)# 方式二
a = 10
b = 20
a,b = b,a
print(a,b)
(2) 复合赋值运算符
Python 还有一些 复合赋值运算符, 例如 +=  -= *= /= %=
其中 a += 1 等价于 a = a + 1 . 其他复合赋值运算符也是同理。
注意 : C++ / Java , 存在 ++ 、 -- 这样的自增 / 自减运算符。 Python 中则不支持这种运算, 如果需要使用 , 则 直接使用 += 1 或者 -= 1(牢记)

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

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

相关文章

数字工厂管理系统如何助力企业数据采集与分析

随着科技的不断进步&#xff0c;数字化已成为企业发展的重要趋势。在制造业领域&#xff0c;数字工厂管理系统的应用日益广泛&#xff0c;它不仅提升了生产效率&#xff0c;更在数据采集与分析方面发挥着举足轻重的作用。本文旨在探讨数字工厂管理系统如何助力企业数据采集与分…

[uniapp] 配置ts类型声明

我想引进图片,但是报错 声明一下就行 TypeScript 支持 | uni-app官网 创建tsconfig.json文件,复制官网的配置 然后在随便一个目录下写一个随便名字的.d.ts文件 例如这样 保存就行 因为ts是默认扫描全部的,所以要按照官网的写法 把不必要的排除掉就行,免得浪费性能

数据库的一些知识点

数据模型的组成要素中&#xff0c;描述数据库的组成对象以及对象之间的联系的是&#xff08; &#xff09;。 A 数据结构 B 数据操作 C 数据的完整性约束条件 D 数据的安全性约束条件 2.单选题 (2分) 若关系中的某一组属性的值能够唯一地标识一个元组&#xff0c;而其子集…

ROS实操:通信机制的实现

最近闲来无事&#xff0c;打算重温了一下ROS方面的相关知识。先前的学习都是一带而过&#xff0c;发现差不多都忘了&#xff0c;学习的不够深入。因此&#xff0c;在重温的同时&#xff0c;写下了这篇关于ROS通信实操的学习博客。 上一篇博客的链接为&#xff1a;ROS架构的学习…

OpenCompass大模型评估

作业链接&#xff1a; Tutorial/opencompass/homework.md at camp2 InternLM/Tutorial GitHub 项目链接&#xff1a; GitHub - open-compass/opencompass: OpenCompass is an LLM evaluation platform, supporting a wide range of models (Llama3, Mistral, InternLM2,GPT-…

Modown9.1主题无限制使用+Erphpdown17.1插件

Modown9.1主题无限制使用 1、Erphpdown17.1插件Modown9.1主题 2、送Modown主题详细教程。 1、Erphpdown插件和Modown主题无需激活 2、送的插件均无需激活 3、主题插件均不包更新 4、已亲测可以完美使用。 功能强大&#xff0c;适用于绝大多数虚拟资源站&#xff01;物超所值&a…

远程桌面连接不上怎么连服务器,原因是什么?如何解决?

远程桌面连接不上怎么连服务器&#xff0c;原因是什么&#xff1f;如何解决&#xff1f; 面对远程桌面连接不上的困境&#xff0c;我们有办法&#xff01; 当你尝试通过远程桌面连接服务器&#xff0c;但遭遇连接失败的挫折时&#xff0c;不要慌张。这种情况可能由多种原因引起…

Netty底层数据交互源码分析

文章目录 1. 前题回顾2. 主线流程源码分析3. Netty底层的零拷贝4. ByteBuf内存池设计 书接上文 1. 前题回顾 上一篇博客我们分析了Netty服务端启动的底层原理&#xff0c;主要就是将EventLoop里面的线程注册到了Select中&#xff0c;然后调用select方法监听客户端连接&#xf…

Amesim基础篇-热仿真常用模型库-Air Conditioning-Pipes

前言 基于上文对空调库各个元件的介绍&#xff0c;本文进一步将其中的管路展开。 管路介绍 1 摩擦阻力管&#xff08;R&#xff09;&#xff1a; 具有阻力特性的管路&#xff0c;通过管长以及管截面计算阻力。 2 可调节阻力管&#xff08;R&#xff09;&#xff1a; 只具有…

STM32CubeMX软件使用(超详细)

1、Cube启动页介绍 2、芯片选择页面介绍 3、输入自己的芯片型号&#xff0c;这里以STM32U575RIT6举例 4、芯片配置页码介绍 5、芯片外设配置栏详细说明 6、点击ClockConfiguration进行时钟树的配置&#xff0c;选择时钟树后可以选择自己想使用的时钟源&#xff0c;也可以直接输…

[c++]多态的分析

多态详细解读 多态的概念多态的构成条件 接口继承和实现继承: 多态的原理:动态绑定和静态绑定 多继承中的虚函数表 多态的概念 -通俗的来说&#xff1a;当不同的对象去完成某同一行为时&#xff0c;会产生不同的状态。 多态的构成条件 必须通过基类的指针或者引用调用虚函数1虚…

3---Linux编译器gcc/g++

一、程序的翻译过程&#xff1a;ESc->iso 1.1预处理&#xff1a;c->c 主要功能&#xff1a;宏替换、头文件的展开、条件编译、去注释&#xff1b;目的是让代码变得纯粹。条件编译&#xff0c;可以实现对代码的裁剪。比如对于不同用户&#xff0c;设置不同的宏常量&…

聚观早报 | 苹果新款iPad Pro发布;国产特斯拉4月交付量

聚观早报每日整理最值得关注的行业重点事件&#xff0c;帮助大家及时了解最新行业动态&#xff0c;每日读报&#xff0c;就读聚观365资讯简报。 整理丨Cutie 5月9日消息 苹果新款iPad Pro发布 国产特斯拉4月交付量 iOS 18新功能爆料 真我GT Neo6续航细节 三星Galaxy Z F…

【计算机毕业设计】springboot海产品加工销售一体化管理系统

时代在飞速进步&#xff0c;每个行业都在努力发展现在先进技术&#xff0c;通过这些先进的技术来提高自己的水平和优势&#xff0c;海产品加工销售一体化 管理系统当然不能排除在外。微信小程序海产品加工销售一体化管理系统是在实际应用和软件工程的开发原理之上&#xff0c;运…

驱动开发-字符设备驱动的注册与注销

1.注册字符设备驱动 #include<fs.h> int register_chrdev(unsigned int major,const char *name,const struct file_operations *fops) 函数功能&#xff1a;注册字符设备驱动 参数&#xff1a;major&#xff1a;主设备号 major>0:静态指定主设备号&#xff0c;不…

IOS 苹果IAP(内购)之创建沙盒账号

IOS 苹果IAP&#xff08;内购&#xff09;之创建沙盒账号 沙盒账号是什么&#xff1f;沙盒账号创建的前提条件沙盒账号创建沙盒账号使用流程沙盒账号注意事项 沙盒账号是什么&#xff1f; 如果IOS应用里面用到了苹果应用内付费&#xff08;IAP&#xff09;功能&#xff0c;那么…

Python管理PVE(Proxmox VE)云平台--节点资源统计

一、前言 写本脚本的初衷是因手动查看统计已分配的PVE资源过于耗时&#xff0c;因此写一个脚本一劳永逸&#xff0c;具体实现方法&#xff1a;利用Python的paramiko模块进行远程命令查看、统计PVE平台各节点已分配的cpu、内存、磁盘空间。 二、步骤 1.构建shell脚本 1.1 统计…

基于SpringBoot的全国风景区WebGIS按省展示实践

目录 前言 一、全国风景区信息介绍 1、全国范围内数据分布 2、全国风景区分布 3、PostGIS空间关联查询 二、后台查询的设计与实现 1、Model和Mapper层 2、业务层和控制层设计 三、WebGIS可视化 1、省份范围可视化 2、省级风景区可视化展示 3、成果展示 总结 前…

EMAP的简单开发(单表)

注意框架版本选择SPA_v1 一个数据源代表一个业务&#xff0c;选择一个就会产生对应的应用 index.jsp是展示的页面 conifg.js是index.jsp引用渲染的一个js文件 index.jsp中的全局变量中有一个pageMeta和contaextPath&#xff1a; pageMeta&#xff1a;是一个对象&#xff0c;…

办公技巧之合集文档 拆分_word

问题 如何将文档合集拆分为单独文档。 操作步骤 软件 word 365 原理简述&#xff1a; 在 word 大纲视图下&#xff0c;通过一级标题确定子文档范围&#xff0c;然后导出即可。 文档结构 从下图可见&#xff0c;文档结构为已建立大纲级别的文档&#xff0c;如果没有建立&a…