周报

Python学习

Python 布尔

布尔表示两值之一:True 或 False。

布尔值

在编程中,您通常需要知道表达式是 True 还是 False。

您可以计算 Python 中的任何表达式,并获得两个答案之一,即 True 或 False。

比较两个值时,将对表达式求值,Python 返回布尔值答案:

实例

print(8 > 7)
print(8 == 7)
print(8 > 7)

在这里插入图片描述
可以将布尔值看做真假,和C语言不同的是C语言进行逻辑运算后返回值为1和0,而这里的true和false即可代表1和0。

评估值和变量

bool() 函数可让您评估任何值,并为您返回 True 或 False。

print(bool("Hello"))
print(bool(10))

在这里插入图片描述
大多数值都为 True

如果有某种内容,则几乎所有值都将评估为 True。

除空字符串外,任何字符串均为 True。

除 0 外,任何数字均为 True。

除空列表外,任何列表、元组、集合和字典均为 True。
某些值为 False

实际上,除空值(例如 ()、[]、{}、""、数字 0 和值 None)外,没有多少值会被评估为 False。当然,值 False 的计算结果为 False。

Python 运算符

运算符用于对变量和值执行操作。

Python 在以下组中划分运算符:

算术运算符
赋值运算符
比较运算符
逻辑运算符
身份运算符
成员运算符
位运算符

Python 算术运算符

在这里插入图片描述

Python 赋值运算符
Python 比较运算符

基本和C语言相同

Python 逻辑运算符

在这里插入图片描述

Python 身份运算符

在这里插入图片描述

Python 成员运算符

在这里插入图片描述

Python 位运算符

在这里插入图片描述

Python 集合(数组)

Python 编程语言中有四种集合数据类型:

列表List是一种有序和可更改的集合。允许重复的成员。
元组Tuple是一种有序且不可更改的集合。允许重复的成员。
集合Set是一个无序和无索引的集合。没有重复的成员。
词典Dictionary是一个无序,可变和有索引的集合。没有重复的成员。

选择集合类型时,了解该类型的属性很有用。

为特定数据集选择正确的类型可能意味着保留含义,并且可能意味着提高效率或安全性。

Python 列表

列表是一个有序且可更改的集合。在 Python 中,列表用方括号编写。
创建列表:

thislist = ["apple", "banana", "cherry"]
print(thislist)

在这里插入图片描述

访问项目

您可以通过引用索引号来访问列表项:
打印列表的第二项:

thislist = ["apple", "banana", "cherry"]
print(thislist[1])
负的索引

负索引表示从末尾开始,-1 表示最后一个项目,-2 表示倒数第二个项目,依此类推。

打印列表的最后一项:

thislist = ["apple", "banana", "cherry"]
print(thislist[-1])
索引范围

您可以通过指定范围的起点和终点来指定索引范围。

指定范围后,返回值将是包含指定项目的新列表。

返回第三、第四、第五项:

thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[2:5])

注释:搜索将从索引 2(包括)开始,到索引 5(不包括)结束。

请记住,第一项的索引为 0。

负索引的范围

如果要从列表末尾开始搜索,请指定负索引

thislist = ["apple", "banana", "cherry", "orange", "kiwi", "melon", "mango"]
print(thislist[-4:-1])
更改项目值
thislist = ["apple", "banana", "cherry"]
thislist[1] = "mango"
检查项目是否存在

如需确定列表中是否存在指定的项,请使用 in 关键字

thislist = ["apple", "banana", "cherry"]
if "apple" in thislist:
  print("Yes, 'apple' is in the fruits list")

列表长度

如需确定列表中有多少项,请使用 len() 方法
添加项目

如需将项目添加到列表的末尾,请使用 append() 方法

thislist = ["apple", "banana", "cherry"]
thislist.append("orange")
print(thislist)

要在指定的索引处添加项目,请使用 insert() 方法:

插入项目作为第二个位置:

thislist = ["apple", "banana", "cherry"]
thislist.insert(1, "orange")
print(thislist)
删除项目

remove() 方法删除指定的项目:

thislist = ["apple", "banana", "cherry"]
thislist.remove("banana")
print(thislist)

pop() 方法删除指定的索引(如果未指定索引,则删除最后一项)
del 关键字删除指定的索引:

thislist = ["apple", "banana", "cherry"]
del thislist[0]
print(thislist)

del 关键字也能完整地删除列表:

thislist = ["apple", "banana", "cherry"]
del thislist

clear() 方法清空列表:

thislist = ["apple", "banana", "cherry"]
thislist.clear()

还有一些常用的方法
在这里插入图片描述

SQL

SQL UNION 和 UNION ALL 操作符

SQL UNION 操作符

UNION 操作符用于合并两个或多个 SELECT 语句的结果集。

请注意,UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。

SQL UNION 语法

SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2

注释:默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。

SQL UNION ALL 语法

SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2

另外,UNION 结果集中的列名总是等于 UNION 中第一个 SELECT 语句中的列名。

SQL SELECT INTO 语句

SQL SELECT INTO 语句可用于创建表的备份复件。

SELECT INTO 语句

SELECT INTO 语句从一个表中选取数据,然后把数据插入另一个表中。

SELECT INTO 语句常用于创建表的备份复件或者用于对记录进行存档。

SQL SELECT INTO 语法

您可以把所有的列插入新表:

SELECT *
INTO new_table_name [IN externaldatabase] 
FROM old_tablename

或者只把希望的列插入新表:

SELECT column_name(s)
INTO new_table_name [IN externaldatabase] 
FROM old_tablename

SQL CREATE DATABASE 语句

CREATE DATABASE 语句

CREATE DATABASE 用于创建数据库。

SQL CREATE DATABASE 语法

CREATE DATABASE database_name

SQL CREATE TABLE 语句

CREATE TABLE 语句

CREATE TABLE 语句用于创建数据库中的表。

SQL CREATE TABLE 语法

CREATE TABLE 表名称
(
列名称1 数据类型,
列名称2 数据类型,
列名称3 数据类型,
....
)

数据类型(data_type)规定了列可容纳何种数据类型。下面的表格包含了SQL中最常用的数据类型:在这里插入图片描述

物联网通信协议测试是保障各类设备间实现可靠数据交互的核心环节。在众多适用于物联网的通信协议中,MQTT(消息队列遥测传输)以其设计简洁与低能耗的优势,获得了广泛应用。为确保MQTT客户端与服务端的实现严格遵循既定标准,并具备良好的互操作性,实施系统化的测试验证至关重要。 为此,采用TTCN-3(树表结合表示法第3版)这一国际标准化测试语言构建的自动化测试框架被引入。该语言擅长表达复杂的测试逻辑与数据结构,同时保持了代码的清晰度与可维护性。基于此框架开发的MQTT协议一致性验证套件,旨在自动化地检验MQTT实现是否完全符合协议规范,并验证其与Eclipse基金会及欧洲电信标准化协会(ETSI)所发布的相关标准的兼容性。这两个组织在物联网通信领域具有广泛影响力,其标准常被视为行业重要参考。 MQTT协议本身存在多个迭代版本,例如3.1、3.1.1以及功能更为丰富的5.0版。一套完备的测试工具必须能够覆盖对这些不同版本的验证,以确保基于各版本开发的设备与应用均能满足一致的质量与可靠性要求,这对于物联网生态的长期稳定运行具有基础性意义。 本资源包内包含核心测试框架文件、一份概述性介绍文档以及一份附加资源文档。这些材料共同提供了关于测试套件功能、应用方法及可能包含的扩展工具或示例的详细信息,旨在协助用户快速理解并部署该测试解决方案。 综上所述,一个基于TTCN-3的高效自动化测试框架,为执行全面、标准的MQTT协议一致性验证提供了理想的技术路径。通过此类专业测试套件,开发人员能够有效确保其MQTT实现的规范符合性与系统兼容性,从而为构建稳定、安全的物联网通信环境奠定坚实基础。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值