首页 > 其他分享 >列表、元组、字典和集合

列表、元组、字典和集合

时间:2024-03-26 12:34:19浏览次数:15  
标签:name 列表 user print 元组 字典


一、for循环遍历列表、元组、字典和集合

1.遍历列表

testList = [1,2,3,4,4]
for items in testList:
    print(items,end='-')

2.遍历元组

testTuple = (4,4,1,1,1)
for items in testTuple:
    print(items,end='-')

3.遍历字典

testDict = {'name':'xiaoxiao','age':8}
for key,value in testDict.items():
    print(key,value,end='-')

4.编辑集合

testSet = {1,2,3,4}
for items in testSet:
    print(items,end='-')

二、列表、元组、集合和字典相互转换

1.列表元组转化为集合(去重)

list1 = [1,2,2,3,3,4]
set1 = set(list1)
print(set1)
# {1, 2, 3, 4}

2.两个列表转字典

list1 = ["key1","key2","key3"]
list2 = ["1","2","3"]
dict1 = dict(zip(list1,list2))
print(dict1)
# {'key1': '1', 'key2': '2', 'key3': '3'}

3.嵌套列表转字典

list3 = [["key1","valu1"],["key2",'value2'],['key3','value3']]
dict1 = dict(list3)
print(dict1)
# {'key1': 'valu1', 'key2': 'value2', 'key3': 'value3'}

4.列表、元组转字符串

list1 = ['a','b','c']
str1 = " ".join(list1)
print(str1)
# a b c

tup1 = ('xu','xiao','xiao')
str2 = "-".join(tup1)
print(str2)
# xu-xiao-xiao

5.字典转为字符串

dic1 = {"name":"xiaoxiao","age":8}
str1 = str(dic1)
print(str1)
# {'name': 'xiaoxiao', 'age': 8}

6.字符串转换为列表

s = 'xiaoxiao'
list4 = list(s)
print(list4)
# ['x', 'i', 'a', 'o', 'x', 'i', 'a', 'o']

7.字符串转元组

s1 = 'xiao'
tup2 = tuple(s1)
print(tup2)
# ('x', 'i', 'a', 'o')

8.字符串转字典

s2 = "{'name':'xiao','age':8}"
dict2 = eval(s2)
print(dict2)
# {'name': 'xiao', 'age': 8}

9.切分字符串

s3 = 'a,b,c'
list5 = s3.split(',')
print(list5)
# ['a', 'b', 'c']

三、列表、元组、集合和字典各自使用场景举例

在Python接口自动化测试中,数据结构扮演着至关重要的角色,用于组织和处理测试数据、请求参数和响应结果。

1.列表使用场景

假设我们有多个用户的ID,需要通过接口获取每个用户的信息:

# 定义用户ID列表
user_ids = [1001, 1002, 1003]
# 对每个用户ID发起请求
for user_id in user_ids:
    response = requests.get(f"https://api.example.com/users/{user_id}")
    # 进行响应处理和断言验证
    assert response.status_code == 200
    # 解析响应体(这里假设返回的是JSON格式数据)
    user_info = response.json()
    # 验证用户信息
    assert 'name' in user_info and 'email' in user_info

2.字典一般用于构造请求参数和返回参数

在发送一个包含多个键值对的POST请求时,我们可以使用字典来封装请求体:

import json
import requests
# 定义要提交的数据
new_user_data = {
    'username': 'testuser',
    'email': '[email protected]',
    'password': 'SecurePassword123!'
}
headers = {'Content-Type': 'application/json'}
# 发起POST请求
response = requests.post("https://api.example.com/users",
                         headers=headers,
                         data=json.dumps(new_user_data))
# 断言检查
assert response.status_code == 201  # 检查是否成功创建新用户

同样我们可以通过解析JSON响应并存储到字典

# 从API获得的JSON响应通常会被转换成Python字典以便于处理:
# 假设响应体如下:
response_json = '{"id": 1, "name": "John Doe", "roles": ["admin", "user"] }'
# 将JSON转换为字典
data_dict = json.loads(response_json)
# 访问和验证数据
assert data_dict['name'] == 'John Doe'
assert 'admin' in data_dict['roles']

3.使用元组存储固定不变的数据

在某些情况下,比如需要预设一组固定的认证信息,可以用元组表示不可变的数据:

# 配置认证信息
auth_credentials = ('admin', 'secret_password')
# 在请求时添加认证头
response = requests.get("https://api.example.com/private-data", auth=requests.auth.HTTPBasicAuth(*auth_credentials))
# 进行后续的断言验证

以上示例展示了在Python接口自动化测试中,列表、字典和元组是如何被灵活运用的。



参考

1、python系列之:列表、元组、集合、字典用法详解
2、python 接口自动化数据结构(如列表、字典、元组)



标签:name,列表,user,print,元组,字典
From: https://www.cnblogs.com/qdhxhz/p/18096395

相关文章

  • 3. CSS 列表和表格相关属性
    列表相关属性ul、ol、li标签中使用<style>ul{list-style-type:lower-roman;/*列表符号,常用值:none*/list-style-position:inside;/*列表符号位置*/list-style-image:url("路径");/*自定义列表符号*/list-......
  • 蓝桥杯算法基础(29)字符串匹配(RabinKarp)(KMP)(前缀树,字典树,trie,后缀数组,高度数组)
     RabinKarpRabinKarpS:ABABABm个P:ABBn个1.朴素算法,挨个匹配2.哈希法hash->滚动哈希c0*31^2+c1*31^1+c2类似于进制的求法求hash值(c0*31+c1)*31+c2hash(p)=o(n)hash(s)=o(m*n)privatestaticvoidmatch(Stringp,Strings){longhash_p=hash(p);......
  • set集合 and 字典 笔记
    set()集合S={1,"你好",2,3}print(type(s))print(s)不可哈希:python中的set集合进行数据存储的时候。需要对数据进行哈希计算,根据计算出的哈希值进行数据存储set集合要求存储必须是可以进行哈希计算的可哈希:不可变的数据类型,int,str,tuple,bool不可哈希:可变的数据类型,kli......
  • 03-python函数和列表
    函数定义def函数名():执行内容#当函数需要返回值时,return,没有返回值默认返回NonereturnxxxNone的使用场景函数返回值上if判断中,None为False定义变量时,用作变量声明,暂时变量不需要具体值global关键字(提升局部变量为全局变量)nn=100defhello():......
  • 元组案例
    实际案例:统计分数范围​假设我们有一组学生的分数,我们希望统计在不同分数范围内的学生人数。​​scores=(85,92,78,95,88,60,72,98,83,75)count_low=sum(1forscoreinscoresifscore<70)count_medium=sum(1forscoreinscoresif70<=score<85)c......
  • Python学习:字典
    Python字典概念在Python中,字典(Dictionary)是一种无序、可变、键值对(key-valuepairs)存储结构的数据类型。字典使用大括号{}来表示,其中每个键值对用冒号:分隔,键和值之间用逗号,分隔。以下是一个简单的字典示例:my_dict={"name":"Alice","age":30,"city":"NewYork"......
  • python基础一:python列表基础和一些经典使用案例
    1.写在前面好久没有更新python这一块的内容了,所以今天整理一块python的内容。今天整理的内容是python里面的列表,作为在python中非常常见的数据类型,尝试用一篇文章来整理其常用的操作,方便以后查看使用。目前可能不全,以后遇到列表相关的操作都放到这篇文章里面来。首先从列表......
  • 蟒蛇书入门学习笔记(3)Python列表
    列表列表是一种数据结构,用于储存一系列有序的数据,可以根据需要动态地增加或删除元素。列表在很多编程语言中都有内置的实现,常用的操作包括插入、删除、修改和查找元素。1.列表的表示列表可以包含字符、数字等等元素,一般来说用表示复数的名称(如letters,digits,names)命名列表,用......
  • 字典树
    字典树高效存储查找字符串【以空间换时间】模板可以维护许多信息:①某个字符串出现的次数;②判断前后缀;classnode:def__init__(self):self.son=dict()definsert(self,s):cur=selfforiins:ifinotincur.son:......
  • 07_FreeRTOS的列表和列表项
    FreeRTOS的列表和列表项列表和列表项的简介列表结构示意图列表项迷你列表项列表和列表项的关系列表相关API函数介绍初始化列表vListInitialise()函数vListInitialiseItem()函数vListInsert()函数vListInsert()插入值为40的列表项插入值为60的列表项插入......