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

【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的几个特点

  1. 简单易学:Python的语法简洁明了,具有很高的可读性,使得初学者能够快速上手编程。
  2. 面向对象:Python支持面向对象编程,可以使用类和对象来组织和管理代码,提供了封装、继承和多态等特性。
  3. 开发效率高:Python具有丰富的内置库和第三方库,大大加速了开发过程。同时,Python还有像文档化和调试工具等用于提高开发效率的功能。
  4. 跨平台性:Python是一种跨平台的编程语言,可以运行在几乎所有的操作系统上,如Windows、Mac和Linux等。
  5. 强大的生态系统:Python拥有庞大、活跃的社区,提供了各种各样的库和工具,如NumPy、Pandas、Scikit-learn和Django等,用于数据分析、机器学习、Web开发等不同领域的应用。

Python是一种简单、易学、功能强大的编程语言,适用于各种应用开发,并且在开发效率和生态系统方面拥有显著优势。

二、实例

1、注释

注释分为三种注释:

  1. #
  2. '''     '''
  3. """     """
# 注释1''' 注释2 '''
"""
注释3
"""

2、数据类型

Python是一门动态的(dynamic)且强类型(strong)语言。

动态/静态 在静态类型语言(statically typed languages)中,类型检查发生在编译阶段(compile time) 在动态类型语言(dynamically typed languages)中,类型检查发生在运行阶段(run time)。

  1. 静态类型(static): 所有的变量类型必须被显示地声明,因为这些信息在编译阶段就被需要。
  2. 动态(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: 步长

  • startstop的正值代表列表下标,负值代表列表从左往右数起,倒数第几个数据。
  • 方向由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']
http://www.lryc.cn/news/173762.html

相关文章:

  • csa从初阶到大牛(练习题2-查询)
  • 【视觉SLAM入门】8. 回环检测,词袋模型,字典,感知,召回,机器学习
  • SpringBean的生命周期
  • uni-app 之 picker选择器
  • 整合车辆出险报告Api接口,轻松管理车险理赔!
  • eNSP基础网络学习-v02
  • mac环境安装多个node版本(可切换)
  • Linux 操作技巧
  • 一个电子信息工程学生的历程和内心感想
  • 【zookeeper】zk集群安装与启动踩坑点
  • 【计算机网络】 拥塞控制
  • 【react】慎用useLayoutEffect转而使用useEffect
  • 基于微信小程序的美食推荐系统设计与实现(源码+lw+部署文档+讲解等)
  • laravel框架 - 消息队列如何使用
  • Dependency ‘org.redisson:redisson:‘ not found解决方法 三种刷新Maven项目的方法
  • Mysql高级——索引优化和查询优化(1)
  • Oracle for Windows安装和配置——Oracle for Windows数据库创建及测试
  • 【1993. 树上的操作】
  • LeetCode【1. 两数之和】
  • 3D成像技术概述
  • Centos7 安装部署 Kubernetes(k8s) 高可用集群
  • c++加速方法大全
  • 【国科大卜算】Truck History 最小生成树Prim
  • SQLAlchemy映射表结构和对数据的CRUD
  • Spring boot原理
  • 技术贴 | 深度解析 PostgreSQL Protocol v3.0(二)— 扩展查询
  • HDFS编程实践-从HDFS中下载指定文件到本地
  • 安防监控视频AI智能分析网关:人流量统计算法的应用场景汇总
  • 第一百五十二回 自定义组件综合实例:游戏摇杆三
  • 多线程的学习中篇上