Python基础-字符串、元组、字典


     Python编码与解码

        编码:就是把str的数据类型转为bytes的数据类型的过程,使用到的关键字是encode

        解码: 把bytes的数据类型转为str的数据类型的过程,使用到的关键字是decode

        使用场景:编码和解码这部分的知识体系主要应用于API的自动化测试和获取到的数据,我们对这部分的数据进行处理的过程。

1)字符串

     str1 = 'nameagesexwok'

    字符串的拆分:     

list_str1 = str1.split(' ')
print('字符串被拆分后的信息:{0},拆分后的数据类型:{1}'.format(list_str1,type(list_str1)))


输出结果:
    字符串被拆分后的信息:['nameagesexwok'],拆分后的数据类型:<class 'list'>

 

#字符串的替换
replace_str=str1.replace('n','x')  
print('字符串被替换后的内容:',replace_str)

#取消字符串的空隔
str2="this is a test      "
print('取消字符串的空隔:',str2.strip())

#把list的数据类型转为str的数据类型
list1=["Python","Java","Go","PHP","C++"]
print('list的类型转为str的类型:',  ','.join(list1))#转成以逗号隔开的字符串对象

#获取字符串的索引值内容
str3="请问我仍然要投入与体育"
print('获取"我"的索引值:',str3.index("我"))

 

2)列表

  list1 = ['a', 'b']
         list2 = ['c', 'd']

'''
append:添加的列表是在列表的最后一位
insert:根据自己的需求insert到列表的索引位置
'''

list1.append("Python")
print(list1)

list1.insert(0,'PHP')
print(list1)

#sort:列表的排序
list1.sort()

列表与字符串的相互转换:

     字符串拆分后变成列表类型,所以字符串转成列表可以用拆分的方法

     列表转成字符串类型:' , '.join(list1)   可以用 逗号/空格 隔开也可以用其他形式

 

3)元组

# 元组中只有一个元素的时候后边一定要加","不加的话,就不再是tuple的数据类型,而是字符串的数据类型
tuple1=('Python',)

  tuple的对象是不可以变化,但是里面对象的值可以改变

tuple1=('Python','Go','Java',['Selenium','Appium'])

#修改tuple第四个对象的值,可以修改成功
tuple1[3][0]='WebDriver'
print('修改tuple对象的值:',tuple1)

#尝试修改tuple里面的值
tuple1[0]='python'  #这里修改第一个元素是会报错的

列表与元组的区别
                  列表的元素可以修改,元组不可以,元组里的对象是可变的,比如元组里有一个列表对象,修改元组对象

 

4)字典

dict1={'name':'wu','age':18,'address':'xian','work':'test'}
#字典的循环输出,输出结果是以元组的形式显示的
for item in dict1.items():
   print(item)

结果:
('name', 'wu')
('age', 18)
('address', 'xian')
('work', 'test')

字典的排序:

#按照key来对字典进行排序,这里的lambda 是匿名函数,item[0]是选择的key
key_dict1=sorted(dict1.items(),key=lambda item:item[0])
print('依据key对象对字典排序后的结果信息:\n',key_dict1)

5列表与字典互转:

'''列表与字典的互转'''
   list1=['Python','Go','Java','C']

   #把列表转为字典,enumerate函数是把列表的对象的索引以对象的形式显示
   dict_list=dict(enumerate(list1))
   print('列表转为字典:{0},数据类型:{1}'.format(dict_list,type(dict_list)))

   #把字典转为列表,dict_list.items()字典循环
   list_dict=list(dict_list.items())
   print('字典转为列表:{0},数据类型:{1}'.format(list_dict,type(list_dict)))

 

5)集合

list1=['Python','Allure','Pytest']
list2=['Java','TestNG','Allure']
print('获取两个对象里面的共同值:',set(list1)&set(list2))
print('获取两个对象里面的差集:',set(list1)|set(list2))
print('获取两个集合对象里面的包含关系:',set(list1)^set(list2))

输出的结果:
获取两个对象里面的共同值: {'Allure'}
获取两个对象里面的差集: {'Allure', 'Pytest', 'Java', 'Python', 'TestNG'}
获取两个集合对象里面的包含关系: {'Python', 'Pytest', 'Java', 'TestNG'}

 

字典中复杂数据的解析和精确子段的获取:

params = {
    'status': 0,
    'msg': 'ok',
    'datas': [
        {
            'name': 'wu',
            'age': 18,
            'address': 'xian',
            'company': ['google', 'microsoft', {'salary': 10000}]
        }
    ]}
# 获取params 中的'salary'的值
list1 = params['datas'] # 获取字典里的datas的全部数据
a = list1[0]['company'] # datas是列表用索引值list1[0],获取到company的数据
sal = a[2]['salary']    # 
# print(list1)
# print(a)
print(sal)

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟学识

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值