【0基础入门Python笔记】一、python 之基础语法、基础数据类型、复合数据类型及基本操作

一、python 之基础语法、基础数据类型、复合数据类型及基本操作

    • 基础语法规则
    • 基础数据类型
      • 数字类型(Numbers)
      • 字符串类型(String)
      • 布尔类型(Boolean)
    • 复合数据类型
      • List(列表)
      • Tuple(元组)
      • Dictionary(字典)
    • 补充知识
      • 索引概念
      • 切片

基础语法规则

  • 缩进规则

Python 以缩进来区分代码块,不同的缩进来区分代码块/代码层级。同一代码块必须有相同的缩进,同时缩进不推荐空格和 Tab 字符混用。

# 行前面加入#为行注释
a = 1
b = 2

以上代码为同一个层级代码,具有相同的缩进,我愿称之为一级代码块

由一级代码块进入二级,必须以冒号(:)开始且需要时定义方法、对象或判断、循环条件等

# 一级代码块
a = 1
b = 2
#判断条件,:号收尾
if a == 1 :#二级代码块print(b)
  • 执行规则

基础部分,认识python从上到下依次执行就可以了
上面代码执行顺序:
在这里插入图片描述

基础数据类型

python的变量定义不需要声名数据类型,但是变量内部存在类型区分。其中基础数据类型分为

  • 数字类型(Numbers)
  • 字符串类型(String)
  • 尔类型(Boolean)

数字类型(Numbers)

数字类型:整数(int)、长整型(long) 、浮点数(float)、复数(complex)
入门级知道:整数(int)、浮点数(float)即可,不需要记那么多,用到了再说喽

# 整数
a = 1# 浮点数理解成小数即可
b = 1.1

字符串类型(String)

字符串类型用来表示文本信息,在Python中使用一对单引号 ’ ’ 或双引号 " " 来创建字符串。

# 单引号
a= 'shiyuncode.com'# 双引号
b= "Hello, world!"# 获取第一个字符 "H"
b1 = b[0] # 字符串切片,获取索引2到3的子字符串 "ll" 
b23 = b[2:4] 

布尔类型(Boolean)

布尔类型,布尔类型意思真/假,python对应的真就是 True 表示,假就是False表示。布尔类型通常用于条件判断和逻辑运算。

# 布尔类型
a = Trueb = False

复合数据类型

Python的符合数据类型,我愿理解为一个变量可以存储多个基础数据,其中包括

  • 列表(List)
  • 元组(Tuple)
  • 字典(Dictionary)

List(列表)

列表是一种有序的集合,可以存储多个元素,每个元素可以是不同的数据类型。列表用方括号 [ ] 表示,元素之间用逗号分隔。

# 定义一个水果列表
fruits = ['apple', 'banana', 'orange', 'grape']# 访问列表元素
first_fruit = fruits[0]  # 获取第一个元素 "apple"# 列表的切片
some_fruits = fruits[1:3]  # 获取索引1到2的子列表 ['banana', 'orange']# 列表的修改和添加
fruits[2] = 'kiwi'  # 修改列表中的元素
fruits.append('pear')  # 添加元素到列表末尾

Tuple(元组)

元组和列表类似,也是一种有序的集合,但与列表不同的是,元组的元素一旦创建就不能被修改,相当于不可变的列表。元组用圆括号 ( ) 表示。

# 元组的创建
tp = (1, 2)# 访问元组元素
x = tp[0]  # 获取第一个元素 1

Dictionary(字典)

字典是一种无序的键-值对集合,用花括号 { } 表示。每个键对应一个值,键和值之间用冒号分隔。这里数据结构和Json的格式一致诶。

# 字典的创建
person = {'name': 'shiyuncode.com','age': 30
}# 访问字典元素
person_name = person['name']  # 获取键'name'对应的值 "shiyuncode.com"# 字典的修改
person['age'] = 31  # 修改键'age'对应的值# 字典的添加
person['gender'] = 'female'  # 添加新的键值对

补充知识

索引概念

索引的起点是0,也就是第1个,对应的索引是0,第2个对应的索引是1,以此类推。

  • 字符串索引图示
    在这里插入图片描述- 列表索引图示
    在这里插入图片描述其它带有索引的类型类似

切片

切片从序列(如列表、元组、字符串等)中获取子序列的操作。通过指定起始索引和结束索引来获取序列的一部分,返回一个新的序列。切片在Python中非常常用,可以用于提取、复制和操作序列中的一段数据。

my_str = '012345'
my_list = [0, 1, 2, 3, 4, 5]# 获取索引1到3的子数据'123'/[1, 2, 3]
sub_str = my_str[1:4]
sub_list = my_list[1:4]# 获取索引0到2的子数据'01'/[0, 1]
sub_str2 = my_str[:3]
sub_list2 = my_list[:3]# 获取索引3到末尾的子数据'345'/[3, 4, 5]
sub_str3 = my_str[3:]
sub_list3 = my_list[3:]# 获取完整的副本'0123456'/[0, 1, 2, 3, 4, 5]
full_copy_str = my_str[:]
full_copy_list = my_list[:]

这里我们可以看到,如果 : 前面不写则表示从头开始,如果后面不写则表示一直到最后。

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用pymupdf实现PDF内容搜索并显示功能

简介: 在日常工作和学习中,我们可能需要查找和提取PDF文件中的特定内容。本文将介绍如何使用Python编程语言和wxPython图形用户界面库来实现一个简单的PDF内容搜索工具。我们将使用PyMuPDF模块来处理PDF文件,并结合wxPython构建一个用户友好的…

Redis—集群

目录标题 主从复制第一次同步命令传播分担主服务器压力增量复制总结面试题什么是Redis主从复制Redis主从复制的原理Redis主从复制的优点Redis主从复制的缺点Redis主从复制的配置步骤Redis主从复制的同步策略主从节点是长还是短连接判断某个节点是否正常工作主从复制架构中&…

elementUI 的上传组件<el-upload>,自定义上传按钮样式

方法一&#xff1a; 原理&#xff1a;调用<el-upload>组件的方法唤起选择文件事件 效果&#xff1a; 页面代码&#xff1a; 1、选择图片按钮 <div class"flex_row_spacebetween btn" click"chooseImg"><span class"el-icon-plus ic…

Kotlin 基础教程一

Kotlin 基本数据类型 Java | Kotlin byte Byte short Short int Int long Long float Float double Double boolean Boolean c…

ceph数据分布

ceph的存储是无主结构&#xff0c;数据分布依赖client来计算&#xff0c;有两个条主要路径。 1、数据到PG 2、PG 到OSD 有两个假设&#xff1a; 第一&#xff0c;pg的数量稳定&#xff0c;可以认为保持不变&#xff1b; 第二&#xff0c; OSD的数量可以增减&#xff0c;OSD的…

安装和配置 Ansible

安装和配置 Ansible 按照下方所述&#xff0c;在控制节点 control.area12.example.com 上安装和配置 Ansible&#xff1a; 安装所需的软件包 创建名为 /home/curtis/ansible/inventory 的静态清单文件&#xff0c;以满足以下要求&#xff1a; node1 是 dev 主机组的成员 node2 …

软件需求-架构师之路(五)

软件需求 软件需求&#xff1a; 指用户 对系统在功能、行为、性能、设计约束等方面的期望。 分为 需求开发 和 需求管理 两大过程。 需求开发&#xff1a; 需求获取需求分析需求定义&#xff08;需求规格说明书&#xff09;需求验证&#xff1a;拉客户一起评审&#xff0c…

LeetCode150道面试经典题-- 合并两个有序链表(简单)

1.题目 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 2.示例 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4] 示例 2&#xff1a; 输入&#xff1a;l1 [], l2 [] 输…

Sencha Ext.NET Crack,构建Blazing快速应用

Sencha Ext.NET Crack,构建Blazing快速应用 Sencha Ext.NET是一个高级的ASP.NET核心组件框架&#xff0c;它包含了强大的跨浏览器Sencha Ext JS库。通过140多个预构建和专业测试的UI组件实现企业级性能和生产效率。Sencha Ext.NET使用尖端的Web技术创建功能强大的Web应用程序&a…

item_password-获得淘口令真实url

一、接口参数说明&#xff1a; item_password-获得淘口令真实url &#xff0c;点击更多API调试&#xff0c;请移步注册API账号点击获取测试key和secret 公共参数 请求地址: https://api-gw.onebound.cn/taobao/item_password 名称类型必须描述keyString是调用key&#xff08…

ATF(TF-A) 威胁模型汇总

安全之安全(security)博客目录导读 目录计划如下&#xff0c;相关内容补充中&#xff0c;待完成后进行超链接&#xff0c;敬请期待&#xff0c;欢迎您的关注 1、通用威胁模型 2、SPMC威胁模型 3、EL3 SPMC威胁模型 4、fvp_r 平台威胁模型 5、RSS-AP接口威胁模型 威胁建模是安全…

十、RabbitMQ集群

一、clustering 1、 使用集群的原因 单台RabbitMQ遇到内存崩溃、机器故障等情况会导致服务不可用单台RabbitMQ只能满足每秒1000条的消息吞吐量 2、搭建步骤 1、准备三台虚拟机 2、修改3台机器的主机名称 分别为node1、node2、node3 vi /etc/hostname 3、配置节点的hosts文…