【python】入门第一课:了解基本语法(数据类型)
目录
一、介绍
1、什么是python?
2、python的几个特点
二、实例
1、注释
2、数据类型
2.1、字符串 str
2.2、整数 int
2.3、浮点数 float
2.4、布尔 bool
2.5、列表 list
2.6、元组 tuple
2.7、集合 set
2.8、字典 dict
一、介绍
1、什么是python?
Python是一种通用的高级编程语言,由Guido van Rossum于1991年创建。它被设计为易读、易学以及具有清晰和简洁的语法结构。Python支持多种编程范式,包括面向对象、函数式和过程式编程。它拥有广泛的第三方库和模块,可以用于各种领域的应用开发,如网站开发、科学计算、人工智能等。这种语言被广泛应用于各个领域,并且在数据科学和机器学习领域非常受欢迎。
2、python的几个特点
- 简单易学:Python的语法简洁明了,具有很高的可读性,使得初学者能够快速上手编程。
- 面向对象:Python支持面向对象编程,可以使用类和对象来组织和管理代码,提供了封装、继承和多态等特性。
- 开发效率高:Python具有丰富的内置库和第三方库,大大加速了开发过程。同时,Python还有像文档化和调试工具等用于提高开发效率的功能。
- 跨平台性:Python是一种跨平台的编程语言,可以运行在几乎所有的操作系统上,如Windows、Mac和Linux等。
- 强大的生态系统:Python拥有庞大、活跃的社区,提供了各种各样的库和工具,如NumPy、Pandas、Scikit-learn和Django等,用于数据分析、机器学习、Web开发等不同领域的应用。
Python是一种简单、易学、功能强大的编程语言,适用于各种应用开发,并且在开发效率和生态系统方面拥有显著优势。
二、实例
1、注释
注释分为三种注释:
- #
- ''' '''
- """ """
# 注释1''' 注释2 ''' """ 注释3 """
2、数据类型
Python是一门动态的(dynamic)且强类型(strong)语言。
动态/静态 在静态类型语言(statically typed languages)中,类型检查发生在编译阶段(compile time) 在动态类型语言(dynamically typed languages)中,类型检查发生在运行阶段(run time)。
- 静态类型(static): 所有的变量类型必须被显示地声明,因为这些信息在编译阶段就被需要。
- 动态(Dynamic): 显示声明不被要求,因为类型赋值发生在运行阶段。
强类型/弱类型 在强类型中,不管在编译时还是运行时,一旦某个类型赋值给某个变量,它会持有这个类型,并且 不能同其他类型在计算某个表达式时混合计算。 在弱类型中,它是很容易与其他类型混合计算的。
2.1、字符串 str
在Python中,用引号括起的都是字符串,其中的引号可以是单引号, 也可以是双引号。
name= 'hello world'
name = "hello world"
可以通过 + 来拼接字符串
print("hello" + " world")
也可以使用制表符 \t 和换行符 \n
2.2、整数 int
在Python中,可对整数执行加(+)减(-)乘(*)除(/)运算。
count = 9
print(count + 1)
print(count - 1)
print(count * 2)
print(count / 2)
Python使用两个乘号表示乘方运算。
print(count ** 2) #81
2.3、浮点数 float
Python将带小数点的数字都称为浮点数。
a = 0.1
b = 0.2
但需要注意的是,结果包含的小数位数可能是不确定的。 计算机转换问题,这个跟你的电脑相关
print(a + b)
2.4、布尔 bool
- True
- False
>= <= == and or
# 短路 and or print(1 and 2 and 3 and 4) print(1 and 2 and 0 and 4)
2.5、列表 list
在Python中,用方括号 [ ] 来表示列表,并用逗号来分隔其中的元素。
l1 = [1, 3, 4, 2, 5]
读取方式与其他语言一致:因为是有序的,可以通过索引来取值。 索引从0开始,但是不同的是可以为负数。
# 读取内容
print(l1[0])
# 下标可以是倒序的
print(l1[-1])
# 改变值
l1[-1] = 6
# 遍历
print(l1)
添加内容 stack栈: push放 pop拿
- pop:拿元素(删除元素)
- extend:追加
- copy:复制新的引用
- append:追加
- l1.sort():排序
- l1.sort(reverse=True):倒序
- remove:删除某个元素
- insert:插入
- clear:清空
Python也支持了一些方法可以对其进行操作。
- 在列表末尾添加元素 append
l1.append("blue_bear")
- 在列表中插入元素 insert
l1.insert(0, "blue_bear")
从列表中删除元素
- pop 出栈|根据索引删除
l1.pop()
l1.pop(0)
- remove 根据元素删除
bicycles.remove('cannonade')
方法remove()只删除第一个指定的值。如果要删除的值可能在列表中出现多次,就需要 使用 循环来判断是否删除了所有这样的值。
- 对列表进行永久性排序 sort
bicycles.sort()
还可以按与字母顺序相反的顺序排列列表元素,为此,只需向方法传递参数 reverse=True 。
- 对列表进行临时性排序 sorted
sorted(bicycles)
- 反转列表元素的排列顺序 reverse
- 确定列表的长度 len
len(bicycles)
python还为列表等类型提供了 切片 功能
切片格式 变量名[start:stop:step] start: 起始下标 stop: 停止下标 step: 步长
- start和stop的正值代表列表下标,负值代表列表从左往右数起,倒数第几个数据。
- 方向由step确定,step为正时,从左往右切片,step为负时,从右往左切片。
- start和stop的空值分别代表列表的头尾的最后一个数据,至于start和stop空值的时候代表的是列 表的头还是尾,由step的正负值决定,即由step确定列表切片的方向后决定。
2.6、元组 tuple
元组与列表相似,但使用圆括号而不是方括号来标识,同时内部元素与大小不可改变。 元组元素快速赋值。
nums = (0, 1, 2)
a, b, c = nums
2.7、集合 set
是一个无序的不重复元素序列,可以使用 set() 方法和 { } 来创建。
cities = set()cities = {'hunan', 'shanghai', 'beijing'}
- 添加元素 add
- 删除元素 remove 报错 , discard 不报错 , pop , clear
- 判断元素是否存在 a in b
集合运算
a = {1, 2, 3, 4} b = {3, 4, 5, 6} print(a - b) print(a | b) print(a & b) print(a ^ b)
2.8、字典 dict
在Python中,字典用放在花括号{}中的一系列键—值对表示。与json类似
字典是一系列键—值对。每个键都与一个值相关联,你可以使用键来访问与之相关联的值。与键相关联 的值可以是数字、字符串、列表乃至字典。
alien = {'color': 'green', 'points': 5}
要获取与键相关联的值,可依次指定字典名和放在方括号内的键
alien['color']
字典是一种动态结构,可随时在其中添加键—值对。要添加键—值对,可依次指定字典名、用 方括号括 起的键和相关联的值。
alien['name'] = 'jack'
对于字典中不再需要的信息,可使用del语句将相应的键—值对彻底删除。使用del语句时, 必须指定字 典名和要删除的键。
del alien['name']
相关文章:

【python】入门第一课:了解基本语法(数据类型)
目录 一、介绍 1、什么是python? 2、python的几个特点 二、实例 1、注释 2、数据类型 2.1、字符串 str 2.2、整数 int 2.3、浮点数 float 2.4、布尔 bool 2.5、列表 list 2.6、元组 tuple 2.7、集合 set 2.8、字典 dict 一、介绍 1、什么是python&…...

csa从初阶到大牛(练习题2-查询)
新建2个文件d1.txt d2.txt ,使用vim打开d1.txt 输入“Hello World”字符串,将b1.txt 硬链接到b2.txt ,查看2个文件的硬连接数 # 新建文件d1.txt和d2.txt touch d1.txt d2.txt# 使用vim编辑d1.txt并输入文本"Hello World" vim d1.txt# 创建硬链接b2.…...

【视觉SLAM入门】8. 回环检测,词袋模型,字典,感知,召回,机器学习
"见人细过 掩匿盖覆” 1. 意义2. 做法2.1 词袋模型和字典2.1.2 感知偏差和感知变异2.1.2 词袋2.1.3 字典 2.2 匹配(相似度)计算 3. 提升 前言: 前端提取数据,后端优化数据,但误差会累计,需要回环检测构建全局一致的地图&…...

SpringBean的生命周期
SpringBean的生命周期 SperingBean的生命周期是从Bean实例化之后,即通过反射创建出对象之后,到Bean成为一个完整对象,最终存储到单例池中,这个过程被称为Spring Bean的生命周期。Spring Bean的生命周期大体上分为三个阶段 Bean的…...

uni-app 之 picker选择器
uni-app 之 picker选择器 同步滚动:开 uni-app 之 picker选择器 一、普通选择器 二、多列选择器 三、时间选择器 四、日期选择器 一、普通选择器 <template><view><picker change"bindPickerChange" :value"index" :range&q…...

整合车辆出险报告Api接口,轻松管理车险理赔!
随着车辆保有量的不断增加,车辆出险的情况也越来越普遍。对于车主来说,如何高效地管理车险理赔,处理保险事故是非常重要的。这时候我们就可以借助整合车辆出险报告API接口,实现快速定位理赔信息,轻松管理车险理赔。 一…...

eNSP基础网络学习-v02
一、eNSP 1.什么是eNSP eNSP(Enterprise Network Simulation Platform)是一款由华为提供的免费的、可扩展的、图形化操作的网络仿真工具平台,主要对企业网络路由器、交换机进行软件仿真,完美呈现真实设备实景,支持大型网络模拟,让…...

mac环境安装多个node版本(可切换)
出现问题 mac m1pro版(前段时间刚换的),环境安装的都是最新的。node 18.17.1 前端跑的是react 18 的项目(antD), 又跑了一个相对环境配置比较低的项目,然后启动不起来了; 分析控制台报错,推断是…...

Linux 操作技巧
目录 一、shell-命令解释器 二、Linux中的特殊符号 三、命令历史--history 一、shell-命令解释器 shell——壳,命令解释器,负责解析用户输入的命令 ——内置命令(shell内置) ——外置命令,在文件系统的某个目录下&…...

一个电子信息工程学生的历程和内心感想
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、我对大学三年专业课程的理解二、我为什么本科选择研究嵌入式这个方向?1.可以把理论变为实际应用——兴趣是最好的老师。2.嵌入式方向可以打的比赛非…...

【zookeeper】zk集群安装与启动踩坑点
zk安装我也踩了一些坑。特别是第一点,zk官网好像都没什么说明,导致直接下错了,搞了好几个小时。 踩坑点如下: 1,在zk官网下载包时,注意3.5以后的版本,要下载带-bin的,3.5之后&…...

【计算机网络】 拥塞控制
文章目录 背景TCP的四种拥塞控制算法慢开始与拥塞避免:快重传:快恢复: 流量控制和拥塞控制本质上的 区别 背景 网络中的链路容量和交换节点中的缓存和处理机都有着工作的极限,当网络的需求超过他们的工作极限时,就出现…...

【react】慎用useLayoutEffect转而使用useEffect
由于useLayoutEffect钩子是在dom获得后、渲染组件前。因此,如果在useLayoutEffect中设置一些长耗时的,或者死循环之类的任务,会导致内存堆栈溢出。这时候需要转用useEffect。 // 适配全局宽度拉动变化时,legend显示数量React.use…...

基于微信小程序的美食推荐系统设计与实现(源码+lw+部署文档+讲解等)
前言 💗博主介绍:✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师、全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌💗 👇🏻…...

laravel框架 - 消息队列如何使用
业务场景:项目里边有很多视频资源需要上传到抖音资源库,通过队列一条一条上传。 参考实例:发送邮件,仅供参考 (1)创建任务【生成任务类】 在你的应用程序中,队列的任务类都默认放在 app/Jobs 目录下。如果这个目录不存…...

Dependency ‘org.redisson:redisson:‘ not found解决方法 三种刷新Maven项目的方法
报错情况 在pom中导入redisson包 <dependency><groupId>org.redisson</groupId><artifactId>redisson</artifactId> </dependency> 爆红,还显示Dependency org.redisson:redisson: not found。 由于报错已经解决,…...

Mysql高级——索引优化和查询优化(1)
索引优化 1. 数据准备 学员表插50万条, 班级表插1万条。 建表 CREATE TABLE class (id INT ( 11 ) NOT NULL AUTO_INCREMENT,className VARCHAR ( 30 ) DEFAULT NULL,address VARCHAR ( 40 ) DEFAULT NULL,monitor INT NULL,PRIMARY KEY ( id ) ) ENGINE INNO…...

Oracle for Windows安装和配置——Oracle for Windows数据库创建及测试
2.2. Oracle for Windows数据库创建及测试 2.2.1. 创建数据库 1)启动数据库创建助手(DBCA) 进入%ORACLE_HOME%\bin\目录并找到“dbca”批处理程序,双击该程序。具体如图2.1.3-1所示。 图2.1.3-1 双击“%ORACLE_HOME%\bin\dbca”…...

【1993. 树上的操作】
来源:力扣(LeetCode) 描述: 给你一棵 n 个节点的树,编号从 0 到 n - 1 ,以父节点数组 parent 的形式给出,其中 parent[i] 是第 i 个节点的父节点。树的根节点为 0 号节点,所以 par…...

LeetCode【1. 两数之和】
穷通有命无须卜,富贵何时乃济贫;角逐名场今已久,依然一幅旧儒巾。 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。 你可以假设每种输…...

3D成像技术概述
工业4.0时代,三维机器视觉备受关注,目前,三维机器视觉成像方法主要分为光学成像法和非光学成像法,这之中,光学成像法是市场主流。 飞行时间3D成像 飞行时间成像(Time of Flight),简称TOF,是通过给目标连续发送光脉冲,然后用传感器接收从物体返回的光,通过探测光脉…...

Centos7 安装部署 Kubernetes(k8s) 高可用集群
1:基础环境准备 宿主机系统集群角色服务器IP主机名称容器centos7.6master192.168.2.150ks-m1dockercentos7.6master192.168.2.151ks-n1dockercentos7.6master192.168.2.152ks-n2docker 1.1 服务器初始化及网络配置 VMware安装Centos7并初始化网络使外部可以访问*…...

c++加速方法大全
我们平常写代码的时候,经常超时,非常难受,所以,我写了这篇文章,让你的代码提升速度(这些方法作者亲测有效,用了这些方法,足足提升了1秒!虽然最后题目还是没过)…...

【国科大卜算】Truck History 最小生成树Prim
Truck History 文章目录 Truck Historyproblem descriptionInputOutputSample个人理解 problem description Advanced Cargo Movement, Ltd. uses trucks of different types. Some trucks are used for vegetable delivery, other for furniture, or for bricks. The company…...

SQLAlchemy映射表结构和对数据的CRUD
目录 ORM模型映射到数据库中 SQLAlchemy对数据的增删改查操作编辑 构建session对象 添加对象 查找对象 修改对象 删除对象 ORM模型映射到数据库中 用declarative_base根据engine创建一个ORM基类 from sqlalchemy.ext.declarative import declarative_base engine cr…...

Spring boot原理
起步依赖 Maven的传递依赖 自动配置 Springboot的自动配置就是当spring容器启动后,一些配置类、bean对象就自动存入到IOC容器中,不需要我们手动去声明,从而简化了开发,省去了繁琐的配置操作。 自动配置原理: 方案一…...

技术贴 | 深度解析 PostgreSQL Protocol v3.0(二)— 扩展查询
引言 PostgreSQL 使用基于消息的协议在前端(客户端)和后端(服务器)之间进行通信。该协议通过 TCP/IP 和 Unix 域套接字支持。 《深度解析 PostgreSQL Protocol v3.0》系列技术贴,将带大家深度了解 PostgreSQL Protoc…...

HDFS编程实践-从HDFS中下载指定文件到本地
前言:Hadoop采用java语言开发,提供了Java Api与HDFS进行交互 先要把hadoop的jar包导入到idea中去 为了能编写一个与hdfs交互的java应用程序,一般需要向java工程中添加以下jar包 1)/usr/local/hadoop/share/hadoop/common目录下…...

安防监控视频AI智能分析网关:人流量统计算法的应用场景汇总
TSINGSEE青犀人流量检测算法是内置在智能分析网关中的一种能够通过AI分析和计算人群数量以及密度的算法技术,在提升城市管理效率、改善用户体验和增加安全性方面发挥着重要作用。人流量检测算法在许多领域都有广泛的应用,如智慧城市、智慧交通、智慧景区…...

第一百五十二回 自定义组件综合实例:游戏摇杆三
文章目录 内容回顾优化性能示例代码我们在上一章回中介绍了 如何实现游戏摇杆相关的内容,本章回中将继续介绍这方面的知识.闲话休提,让我们一起Talk Flutter吧。 内容回顾 我们在前面章回中介绍了游戏摇杆的概念以及实现方法,并且通过示例代码演示了实现游戏摇杆的整个过程…...