基础语法——笔记一

news2024/12/22 9:12:12

一、基础语法

  • 编码
    源码文件以UTF-8编码,所有字符串都是Unicode字符串
  • 标识符
    第一个字符必须是字母表中的字母或下划线_ 标识符的其他部分由字母、数字、下划线组成 标识符对大小写敏感
  • python保留字(关键字)
    不能用于任何标识符
  • 输出python标准库所有关键字编码:
>>import keyword
>>keword.kwlist
  • 注释
    单行注释以#开头 多行注释可用多个#,或者 '''"""
  • 行与缩进
    使用缩进表示代码块,不需要使用大括号{}
  • 多行语句
    语句太长,使用 \ 来实现多行语句
  • 数字(Number)类型
    • int(整数)
    • bool(布尔)
    • float(浮点数)
    • complex(复数)
  • 字符串(String)
    索引方式:从左往右0开始,从右往左-1开始 字符串的截取语法:变量[头下标:尾下标:步长]
  • print输出
    print 默认输出是换行的,如果要实现不换行需要在变量末尾加上 end=“”
  • import与from…import
    在 python 用 import 或者 from…import 来导入相应的模块。
    将整个模块(somemodule)导入,格式为: import somemodule
    从某个模块中导入某个函数,格式为: from somemodule import somefunction
    从某个模块中导入多个函数,格式为: from somemodule import firstfunc, secondfunc, thirdfunc
    将某个模块中的全部函数导入,格式为: from somemodule import *

二、基本数据类型

1、变量

  • 变量不需声明,直接赋值使用
  • Python可以多个变量同时赋值
    赋予相同的值eg:a=b=c=1
    赋予不相同的值eg:a,b,c=1,2,"run"

2、标准数据类型

Python3共有6个标准数据类型
注:

不可变数据(3个):Number(数字)、String(字符串)、Tuple(元组)
可变数据(3个):List(列表)、Set(集合)、Dictionary(字典)

2.1 Number(数字)

  • 类型:int、float、bool、complex
  • 常用函数:
    type()——查询变量所指的对象类型 print(type(a))
    isinstance()——判断变量是否为该类型 isinstance(a, int)

注意:
1、Python3 中,bool 是 int 的子类,True 和 False 可以和数字相加, True==1、False==0 会返回 True,但可以通过 is 来判断类型。
2、在 Python2 中是没有布尔型的,它用数字 0 表示 False,用 1 表示 True。

  • 数值运算
2/4=0.5 # 除法,得到一个浮点数
2//4=0 # 除法,得到一个整数
17%3=2 #取余
2 ** 5 = 32 #乘方

2.2 String(字符串)

字符串的截取语法:变量[头下标:尾下标]
在这里插入图片描述

注意:

  • 1、\可以用来转义,使用r可以让反斜杠不发生转义。
  • 2、字符串可以用+运算符连接在一起,用*运算符重复。
  • 3、Python中的字符串有两种索引方式,从左往右以0开始,从右往左以-1开始。
  • 4、Python中的字符串不能改变。

2.3 List(列表)

列表是写在方括号 [] 之间、用逗号分隔开的元素列表。
列表截取语法:变量[头下标:尾下标]
索引值以 0 为开始值,-1 为从末尾的开始位置。
在这里插入图片描述

注意:

  • 1、List写在方括号之间,元素用逗号隔开。
  • 2、和字符串一样,list可以被索引和切片。
  • 3、List可以使用+操作符进行拼接。
  • 4、List中的元素是可以改变的。(与字符串不一样的地方)

2.4 Tuple(元组)

  • 元组写在小括号 () 里,元素之间用逗号隔开。
  • 与列表的不同点:元素不能修改
  • 构造包含 0 个或 1 个元素的元组比较特殊,所以有一些额外的语法规则:
tup1 = ()    # 空元组
tup2 = (20,) # 一个元素,需要在元素后添加逗号
  • string、list 和 tuple 都属于 sequence(序列)。

注意:

  • 1、与字符串一样,元组的元素不能修改。
  • 2、元组也可以被索引和切片,方法一样。
  • 3、注意构造包含 0 或 1 个元素的元组的特殊语法规则。
  • 4、元组也可以使用+操作符进行拼接。

2.5 Set(集合)

  • 集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员。
  • 基本功能是进行成员关系测试删除重复元素
  • 使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典。
# set可以进行集合运算
a = set('abracadabra')
b = set('alacazam')
print(a)
print(a - b)     # a 和 b 的差集
print(a | b)     # a 和 b 的并集
print(a & b)     # a 和 b 的交集
print(a ^ b)     # a 和 b 中不同时存在的元素

2.6 Dictionary(字典)

  • 字典(dictionary)是Python中另一个非常有用的内置数据类型。
  • 列表是有序的对象集合,字典是无序的对象集合。两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
  • 字典是一种映射类型,字典用 { } 标识,它是一个无序的 键(key) : 值(value) 的集合。
  • 键(key)必须使用不可变类型。
  • 在同一个字典中,键(key)必须是唯一的。

字典类型也有一些内置的函数,例如 clear()、keys()、values() 等。 注意:

  • 1、字典是一种映射类型,它的元素是键值对。
  • 2、字典的关键字必须为不可变类型,且不能重复。
  • 3、创建空字典使用 { }。

三、数据类型转换

1、隐式类型转换 - 自动完成

2、显式类型转换 - 需要使用类型函数来转换

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

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

相关文章

【Redis高级应用】多级缓存

文章目录 什么是多级缓存JVM进程缓存初识Caffeine实现JVM进程缓存需求实现 Lua语法入门初识LuaHelloWorld变量和循环Lua的数据类型声明变量循环 条件控制、函数函数条件控制案例 实现多级缓存安装OpenRestyOpenResty快速入门反向代理流程OpenResty监听请求编写item.lua 请求参数…

ES+Redis+MySQL,这个高可用架构设计太顶了

会员系统是一种基础系统,跟公司所有业务线的下单主流程密切相关。如果会员系统出故障,会导致用户无法下单,影响范围是全公司所有业务线。所以,会员系统必须保证高性能、高可用,提供稳定、高效的基础服务。 一、背景 二…

【最终截稿 | Springer 独立出版 | EI稳定检索】 2023年绿色建筑国际会议(ICoGB 2023)

会议简介 Brief Introduction 2023年绿色建筑国际会议(ICoGB 2023) 会议时间:2023年5月21日-23日 召开地点:瑞典斯德哥尔摩 大会官网:www.icogb.org ICoGB 2023将围绕“绿色建筑”的最新研究领域而展开,为研究人员、工程师、专家学…

进程(一)

进程(一) 2.1 进程的定义、组成、组织方式、特征2.1.1 定义2.1.2 组成2.1.3 组织方式2.1.4 特征2.1.5 本小节总结 2.2 进程的状态与转换2.2.1 进程的状态2.2.3 进程状态的转换2.2.4 本小节总结 2.3 进程控制2.3.1 基本概念2.3.2 进程控制相关的原语2.3.3…

BetaFlight Mark4之“妖怪”声音

BetaFlight Mark4之“妖怪”声音 1. 源由2. 分析3. 数据3.1 配置一3.1.1 “妖怪”声音 黑匣子分析 3.2 配置二3.2.1 仅配置调整(其他不变)3.2.2 配置调整 整体螺丝锁紧 4. 总结5. 附录5.1 Betaflight filter tuning. The easy way to get a perfect fil…

防雷接地网施工综合方案

防雷接地网是一种用于防止雷击的重要设施,其主要作用是将雷电击中建筑物或设备后的电流引入地下,以保护人员和设备的安全。防雷接地网的施工方案是非常重要的,它直接关系到工程质量和安全。 防雷接地网的施工方案需要考虑很多因素&#xff0…

第四十八章 Unity 布局(下)

本章节我们介绍网格布局组 (Grid Layout Group)组件。 我们新建一个“SampleScene5.unity”场景,然后添加Panel面板容器(居中且尺寸为300*300),然后为其添加Grid Layout Group 组件,如下所示 Padding 布局组边缘内的…

第四十九章 Unity UI适配器组件

首先,我们介绍内容大小适配器 (Content Size Fitter)组件。 我们新建一个“SampleScene6.unity”场景,然后添加一个Text UI元素,让其居中显示,并且尺寸设置为50*30。 由于我们设置Text的尺寸在水平方向上面太小,也就是…

NSSCTF [suctf 2019]hardcpp WP 控制流混淆

下载文件,64位主函数非常多循环 去控制流混淆,脚本下载deflat 用法 python 脚本名 文件名 起始地址例如主函数地址是0x4007E0 python deflat.py hardCpp 0x4007E0然后就生成了去混淆的文件 主函数非常大,开始分析逻辑 puts("func(?…

《Linux 内核设计与实现》10. 内核同步方法

文章目录 原子操作原子整数操作64 位原子操作原子位操作 自旋锁读写自旋锁信号量计数信号量和二值信号量信号量方法列表 读写信号量互斥体信号量和互斥体自旋锁和互斥体 完成变量BLK:大内核锁顺序锁禁止抢占顺序和屏障 原子操作 原子操作:可以保证指令以…

人大金仓KFS全新升级,从容应对“名场面”

系统迁移升级过程中, 迁移停机时间长? 异构数据库迁移成本高? 数据一致性无法保证? 发生故障后缺乏回滚手段? 这些“名场面”您遇到过吗? KFS全新解决方案正式发布 针对用户不同应用场景出现的普遍痛点&…

C++基础之类、对象一(类的定义,作用域、this指针)

目录 面向对象的编程 类的引入 简介 类的定义 简介 访问限定符 命名规则 封装 简介 类的作用域 类的大小及存储模型 this指针 简介 面向对象的编程 C与C语言不同,C是面向对象的编程,那么什么是面向对象的编程呢? C语言编程,规定…

C++之多态与虚函数

文章目录 初识多态运行时多态的原理静态联编和动态联编 初识多态 多态性是面向对象程序设计的关键技术之一。若程序不支持多态,不能称为面向对象的语言编译时多态:通过函数重载实现,早期绑定运行时多态:在程序执行过成中&#xf…

神策微报告丨10 页速览「生成式 AI」能力边界与商业化!

以 ChatGPT 为代表的生成式 AI 投入规模化应用后,一场人工智能的军备竞赛正在上演,生成式 AI 成为科技领域关注的焦点。 基于此背景,神策数据正式发布微报告《关于生成式 AI,这 10 页 PPT 就够了!》,从突破…

DIDCTF平台练习-2022暑假取证学习

文章目录 前言123456789101112131415161718 前言 挺适合新手的,平台地址https://forensics.didctf.com/challenges 1 直接看 WIN-49I0SNRJAMF 2 计算即可 4547A61A11064DF47B272A4803788597F9A5E9AC0F11A93ABE58C8B8588956CB 3 NoxPlayer,夜神…

记一次azkaban调度异常处理

一、背景 预发布环境使用的数据库性能比较低,根据业务测试的需求,需要将数据库更换成 稳定高性能的数据库。更换业务数据库后azkaban定时任务失败 二、数据库服务信息 说明:该部分使用代号来代替,非真实信息 该数据库存储了azka…

docker 搭建 Elasticsearch和Kibana 8.x版本

参考: docker入门:单机elasticsearch安装记录,保证无坑_8月日更_小鲍侃java_InfoQ写作社区 新建文件夹 同上文所述相同,需要在宿主机上挂载配置文件与数据文件。 mkdir -p /Users/louye/data/learn-data/elastic/config mkdir -p /Users/lo…

学系统集成项目管理工程师(中项)系列19a_成本管理(上)

1. 要确保在批准的预算内完成项目 2. 必须考虑项目决策对项目产品、服务或成果的使用成本、维护成本和支持成本的影响 3. 对成本的影响力在项目早期最大 4. 失控原因 4.1. 对工程项目认识不足 4.1.1. 对信息系统工程成本控制的特点认识不足,对难度估计不足 4.…

大数据|实验三:PageRank算法实现

文章目录 📚PageRank概述🐇什么是PageRank🐇PageRank的简化模型🐇PageRank的随机浏览模型 📚实验目的📚实验平台📚实验内容🐇在本地编写程序和调试🐇在集群上提交作业并执…

【Linux脚本篇】流程控制语句-if

目录 🍁流程控制语句if 🍂单分支语句 🍂双分支语句 🍂多分支语句 🍁流程控制语句:文件比较 🍁流程控制语句:整数比对 🍁流程控制语句:字符对比 🍁…