Python的list、元组、字典、字符串常用方法操作

一、list操作

1、概念:Python内置的一种数据类型是列表:list。list是一种有序的集合,可以随时添加和删除其中的元素。

列表中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

列表中的数据项用逗号分隔,用方括号括起来。列表里面可以再套列表,一个里面套一个列表,叫二维数组;一个里面套一个列表,里面的列表再套一个列表,这个叫三维数组,套几层就是几维。

2、示例1

1

stus='诸葛亮,刘备,关羽,张飞'

new_stus=['诸葛亮','刘备','张飞','曹操','孙权']

#列表、list、数组、array指的都是一样的

#下标、索引、角标、编号都是同一个意思

#根据编号去取值

print(new_stus[-1])

#最前面一个元素的下标是0,最后一个元素的下标是-1

2

cities=[]

#增加

cities.append('北京')#在列表末尾增加一个元素

cities.insert(0,'上海')#不要写负数,在指定位置增加元素

cities.append('广州')

print(cities)

#删除

cities.pop(0)#删除指定位置的元素

cities.remove('北京')#删除指定的元素

cities.clear()#清空list

del cities[-1]#删除指定位置的元素

print(cities)

#修改

print (cities)

cities[3]='南京'#修改的时候如果指定的下标不存在,会报错

print(cities)

#IndexError: list assignment index out of range,没有的下标是不能修改的

#查询

print(cities[0])#指定位置的

print(cities.index('广州'))#获取指定元素的下标,如果找不到元素,会报错

print(cities.count('广州'))#查看元素在list里面出现了多少次

my_list = ['python','jmeter','charles','postman']

print(my_list.reverse())#只是把这个list反转一下,但是不会返回内容

print(my_list)

 

3)排序

nums=[213,3,54,5423,7567567,3453,6,4,657]

nums=['f','a','u','d']

nums.sort()#升序排序,字符串、字母都可以排序

nums.sort(reverse=True)#降序排序

print(nums)

 

4)复制

cities2=['深圳','厦门','成都']

print(cities2*3)#复制几次

 

5)多维数组

#二维数组

#一层层去取

words=['view','code',]

print(words[-1][-1])

names=[['小黑',['小绿',138]],'小红',['小紫',['小白']]]

print(names[-1][-1][0])

print(names[0][-1][-1])

 

3、示例2

#校验输入的用户名是否合法:

#输入账号 #input

#如果账号存在,提示已被注册,如果不存在的,允许注册 al_users[]

#不能为空 #strip()

#用户名长度为6-12之间 len() 就是字符个数

#最对输入3次 #用循环

all_users=['诸葛亮','刘备','张飞','曹操','孙权']

for i in range(3)

username=input('请输入账号:').strip()

if len(username)>5 and len(username)<13:

#先判断用户名长度,可以避免向数据库查询,占用性能

if all_users.count(username)>0:#count() 方法用于统计某个元素在列表中出现的次数。

print('这个名字已被注册')

 

else:

print('用户名长度不合法')

二、元组

Python的元组与列表类似,不同之处在于元组的元素不能修改。

元组使用小括号,列表使用方括号。

元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。

 

示例:

#元组也是一个list,他和list的区别是,元组里面元素无法修改

t=(1,2,3,4,5,6,7)

print(type(t))

#试试 循环\切片\下标取值\修改值

print (t[:1])

for i in t:

print(i)

#如果元组里面只有一个元素的话,那么必须在这个元素后面加一个逗号

words=(1,)

words2=('abc',)

print(type(words))

print(type(words2))

print(t.index(2))#找到元素的下标

print(t.count(2))#找到元素的个数

三、list循环

for...in循环,依次把list或tuple中的每个元素迭代出来,for x in ...循环就是把每个元素代入变量x,然后执行缩进块的语句。

示例:

 

lists=['是否达到','水电费水电费是','发生的发生的','建行卡和监控',[1,2,3,4]]

words='marry,lily,joker'

 

for name in lists: #name只是一个变量名

for name in words: # name只是一个变量名

print(name)

for循环在循环可迭代对象的时候,每次循环的是里面的每一个元素,python的语法

for i in range(4): #其他语言,java实现方式

print(lists[i])

for name in lists: # name只是一个变量名

if type(name)==list:#判断一个变量的类型,列表中的列表

for i in name:

print(i)

print(name)

 

 

四、切片

切片是list取值的一种方式,切片操作(slice)可以从一个字符串中获取子字符串(字符串的一部分)。我们使用一对方括号、起始偏移量start、终止偏移量end 以及可选的步长step 来定义一个分片。

示例1:

nums=['诸葛亮','刘备','关羽','张飞']

print(nums[1:3])#顾头不顾尾,不包含最后那个下标

print(nums[1:])#如果从某个小标开始取,取到末尾结束,后面那个下标可以不写

print(nums[0:2])# 相当于print(nums[:2}),如果是从头开始取,取到后面某个下标结束,那么开头的下标可以不写

print(nums[:])#取list中所有的

for i in range(3): #range也是顾头不顾尾

print(i)

示例2:

lis=list(range(1,21))

print(lis)

print(lis[::-2])#最后一个2叫做步长,隔两个取一个值

若果步长是负数,从右往左取值

如果步长是正数的话,从左往右边开始取值

lis.reverse()#改变了原来list的值,字符串倒转(reverse)

new_list=list[::-1] #产生了新的一个list,不会改变原来list的值

print(new_list)

 

示例3:

#切片操作同样适用于字符串

info='你好,今天天气很好'

# 0 1 2 3 4 5 6 7 8

#下标是不会变的

print(info[2::-1])

 

五、字典操作

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 

特点:1、取数据方便 2、速度快,

 

示例1:查询

infos={

'name':'张流量','sex':'男','addr':'火星','age':180

}

print(infos.get('name'))

print(infos['sex'])#如果key不存在会报错

print(infos.get('phone'))#如果取不到这个key值,就是None

print(infos.get('phone',110))#如果取不到这个key值,默认就是110

 

示例2:增加

infos['phone']=13590258888#增加一个key

infos.setdefault('小金库','2000万')

infos.setdefault('name','2000万')#如果key存在的话,不会修改可以原来的值

infos['name']='鹏妹妹'#如果key存在的话,会修改原来可以对应的value

print(infos)

字段是无序的

 

示例3:修改

infos['name']='鹏妹妹'

 

示例4:删除

infos.pop('name')#指定key来删除

infos.popitem()#随机删除一个key

del infos['phone']#指定key来删除

infos.clear()#清空字典

print(infos)

 

示例5:字典嵌套字典查询

 1 people = {
 2    '田雨':{
 3       'age':18,
 4       'money':200000,
 5       'clothes':'100套',
 6       'hzp':'n多',
 7       'shoes':['nike','addis','lv','chanle']
 8    },
 9    '张流量':{
10       '金库':'2000w',
11       'house':['三环一套','4环2套'],
12       'cars':    {
13             'japan':['普拉多','兰德酷路泽'],
14             'usa':['林肯','凯迪拉克','福特'],
15             'china':['五菱宏光','qq','红旗']
16          }
17    }
18 }
19 print(people['张流量']['cars']['china'][1])
20 print(people['张流量']['cars']['usa'][:])
21 people['田雨']['money']=people['田雨']['money']+200
22 print(people)
23 people['田雨']['shoes'].append('匡威')
24 print(people)
25 people['张流量']['cars']['usa'].append('牧马人')
26 print(people)
27 直接循环一个字典的话,那么循环的是字典的key
28 for p in people:
29     print(p)
30 for k,v in people.items():#循环的时候,同时取key和value
31     print(k,'===>',v)

 

 

 

六、字符串常用方法

字符串是 Python 中最常用的数据类型。我们可以使用引号('或")来创建字符串。

Python 不支持单字符类型,单字符在 Python 中也是作为一个字符串使用。

 

#字符串是不能修改的

a=' 字 符 串 \n\n ' #\n为换行符

c=a.strip()#默认去掉字符串两边的空格和换行符

c=a.lstrip()#默认去掉字符串左边的空格和换行符

c=a.rstrip()#默认去掉字符串右边的空格和换行符

print('c...',c)

print('a...',a)

words='today is a wonderfulday'

print(words.strip('day'))#如果strip方法指定一个值的话,那么会去掉这个值

print(words.count('a'))#统计字符串出现的次数

#print(words.index('z'))#找下标,如果元素找不到的话,会报错

print(words.find('z'))#找下标,如果元素找不到的话,返回-1

print(words.replace('day','DAY'))#替换字符串

print(words.isdigit())#判断字符串是否是纯数字

print(words.startswith('http'))#判断是否以某个字符串开头

words.endswith('.jpg')#判断是否以某个字符串结尾

print(words.upper())#变成大写

print(words.lower())#变成小写

username='abcdef12345@#$'

print(username.isalpha())#判断字符串是否全为字母

print(username.isalnum())#判断是否包含字母和数字,它是主要有字母或者有数字就返回true

 

 

转载于:https://www.cnblogs.com/zhouly-008/p/8673405.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python编程语言中,有四种常用的集合数据类型,它们分别是列表(List)、元组(Tuple)、字典(Dictionary)和集合(Set)。列表是一种有序和可更改的集合,允许重复的成员。元组是一种有序且不可更改的集合,也允许重复的成员。字典是一个无序、可变且有索引的集合,其中没有重复的成员。而集合是一种无序和无索引的集合,没有重复的成员。这四种集合数据类型在Python中都有着不同的特点和用途。 在Python中,列表元组字符串都属于序列,它们的元素都可以通过编号进行访问。而字典则属于映射,其中的元素是以键值对的形式存在的。集合则不属于序列或映射中的任何一种,它是一种独立的数据类型,用于存储一组不重复的元素。 总结起来,Python中的列表(List)、元组(Tuple)、字典(Dictionary)和集合(Set)都是常用的集合数据类型,它们各自有着不同的特点和用途。列表是有序和可更改的集合,元组是有序且不可更改的集合,字典是无序、可变且有索引的集合,集合是无序和无索引的集合。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [浅谈python四种集合数据类型—【列表元组、集合、字典】](https://blog.csdn.net/QWERTYzxw/article/details/121479048)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [python 元组、集合与字典](https://download.csdn.net/download/weixin_38603219/13752298)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值