python中的数据类型基础知识:对于字符串、列表、元组、字典和集合的基本使用

@TOpython中的数据类型基础知识C

#python中的数据类型基础知识

注:一下所有函数,输出等基于pyCharm3.4.1

(1)在list列表中:
注:list列表中,元素的索引值都是从0开始的,list1为举例的一个列表
#访问列表中的元素通过索引值来获取
如:list1 = [1,2,5,3,6,9,4,6]
print(list[2][1]):指的是列表中第2个位置的元素中的第一个子元素;

**#给列表元素进行排序**
	如:list1 = [1,2,5,3,6,9,4,6]
	    list1.sort()  #正序排列  list1.reverse()  #倒序排列
	    print(list1)

**#给列表添加元素**
	如:list1 = [1,2,5,3,6,9,4,6]
	    list1.append(8)   #给列表末尾添加一个元素

**#给列表删除元素**
	如:list1 = [1,2,5,3,6,9,4,6]
	    list1.del[3]  #通过索引值给对应的位置添加元素
	    list1.remove(2)  #删除列表中对应的2这个元素
	    list1.pop()    #删除列表中末尾的元素
	    list1.clear()   #清空列表

**#给列表元素修改**
	如:list1 = [1,2,5,3,6,9,4,6]
	    list1[3]=6   #通过索引值来确定修改那个元素,用=来重新赋值元素

**#将列表元素列举出来**
	如:list1 = [1,2,5,3,6,9,4,6]
	    for i in list1:
	    print(i)

(2)在tuple元组中:
(由于元组无法修改,所以对于元组的元素的改,删,加都是不能进行的,但可以对元组中的列表元素可以进行改,加,清空)

注:tuple元组中,元素的索引值都是从0开始的,tuple1为举例中的一个元组
**#访问元祖中的元素通过索引值来获取**
	如:tuple1=(1,2,[1,4,5],'b',(1,2,3),'k','i')
	    print(tuple1[2][1])	 

**#给元组的列表加元素**
	如:tuple1=(1,2,[1,4,5],'b',(1,2,3),'k','i')
	    tuple1[2].append(2)
	    print(tuple1)      #给元组中的第二个元素即列表加一个2这个元素

**#给元组的列表修改元素**
	如:tuple1=(1,2,[1,4,5],'b',(1,2,3),'k','i')
	    tuple1[2][2]=3
	    print(tuple1)      #给元组中的第二个元素即列表的第2个元素改为3这个子元素

**#删除元组内列表元素(即清空元组中列表变成一个空列表)**
	如:tuple1=(1,2,[1,4,5],'b',(1,2,3),'k','i')
	    tuple1[2].clear(2)
	    print(tuple1) 

**#tuple元组自带一些函数:**
	如:tuple1=(1,5,7,8,4)
	    print(max(tuple(tuple1)))	#对于元素皆为数字的元组可以进行输出最大元素

	    print(min(tuple(tuple1)))	#同样可以输出最小元素

	    tuple1=(1,2,1,2,3,"l",'o',[1,2])
	    print(len(tuple(tuple1)))   #可以计算元组的元素个数(可以有字符串,数字,列表(被当做一个元素))

	    print(tuple1.count(1))    #可以统计元组中int1这个数出现的次数

	    print(sorted(tuple1))       #可以对元素全是int的数字进行正序排列


**#判断某个数字或者字符串是否在元组中用in,不在用not in**
	如:tuple1=(1,2,1,4,5,'l','p')
	    p = tuple1.__contains__(1)
	    q = (1) in tuple1
	    print(p)
	    print(q)			#其中的1也可以是字符串(如:'p')

(3)在dict字典中
(字典用于存放数据量大,元素顺序有变化的数据),字典的特性是每一组都对应一个key键和一个value值,并且键具有唯一性。

如:dict1= {"name":"张三","age":18,"sex":"男","tail":182}
    冒号前的字符串称为key(键),冒号后的字符串或者数字称为value(值)

**#输出某一个键所对应的值**
如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
    print(dict1["name"])       #会把"name"这个键对应的value(值)打印出来张三

**#对字典进行元素添加,也是对应的添加一组元素包含键和值**
如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
    dict1["address"]="陕西西安"
    print(dict1)               #给字典dict1中添加一组"address":"陕西西安"元素

**#删除字典中元素**
①如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
      del dict1["name"]
      print(dict1)              
      #使用del来通过key(键)定位删除对应组的元素

②如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
      dict1.pop("age")
      print(dict1)           
       #使用pop来通过key(键)定位删除对应组的元素

③如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
      dict1.clear()             
      print(dict1)             
       #使用clear来清空字典

**#修改字典中value值**
如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
    dict1["name"]="王五"             
    print(dict1)               
     #通过key的索引来修改对应的value值

#访问字典,包含四部分:key的访问,value的访问,字典中的元素访问,字典中的键值对访问
**#键的访问(注:访问字典使用for循环)**

如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
    for i in dict1.keys():
        print(i)                
    #输出所有键值对的key

**#值的访问**
如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
    for i in dict1.values():
        print(i)                
      #输出所有键值对的value

**#元素的访问**
如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
    for i in dict1.items():
        print(i)                
				#输出('tail', 182)
				     ('age', 18)
				     ('name', '张三')
				     ('sex', '男')

**#键值对的访问**
如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
    for i in dict1.items():
        print(i) 
				#输出age 18
				     name 张三
				     tail 182
				     sex 男

**#字典中键值对的个数**
如:dict1={"name":"张三","age":18,"sex":"男","tail":182}
    print(len(dict1))    
				#输出为4,即为4组键值对

**#下面是列表,元组,字符串,字典的相互转化方式**
**#列表转字典**
如:list1=[1,2,3]
    list2=["l","p","o"]
    print(dict(zip(list1,list2)))
    #输出{1: 'l', 2: 'p', 3: 'o'},即将list1作为键,将list2作为值,两个一一对应(务必,不能空余一个没有key或者没有value,否则会省去剩余的元列表中的元素)

**#元组转字典**
如:tup1= (1,2,3)
    tup2= ("l","p","o")
    print(dict(zip(tup1,tup2)))
    #输出为{1: 'l', 2: 'p', 3: 'o'},与列表转化理解一致

**#字典转字符串**
如:dict1={1: 'l', 2: 'p', 3: 'o'}
    print(str(dict1),len(str(dict1)))
    #输出为{1: 'l', 2: 'p', 3: 'o'} 24,len是将转换过来的额字符串的元素个数进行了统计(包括{},':这些符号和字母数字,并且打印输出的格式中会在逗号和冒号后面加一个空格,所以一共加起来就是24)

**#字典转列表**
如:dict1={1: 'l', 2: 'p', 3: 'o'}
    print(list(dict1.keys()))		#[1, 2, 3]
    print(list(dict1.values()))		#['l', 'p', 'o']
    print(list(dict1.items()))		#[(1, 'l'), (2, 'p'), (3, 'o')]

**#字典转元组**
如:dict1={1: 'l', 2: 'p', 3: 'o'}
    print(tuple(dict1.keys()))		#(1, 2, 3)
    print(tuple(dict1.values()))	#('l', 'p', 'o')
    print(tuple(dict1.items()))		#((1, 'l'), (2, 'p'), (3, 'o'))

(4)集合set,有两种变现方式:set()或者{},不存在键、值之分
空集合用set()表示,最重要的是字典中的元素是无序的(体现在每次打印出的顺序都不同)

**#集合元素的访问**
如:访问集合中的元素
    set1={1,"r","李","A"}
    for i in set1:
	print(i)			# r 1 李 A

**#集合元素的添加**
如:set1={1,"r","李","A"}
    set1.add("X")
    print(set1)				#{'r', 1, '李', 'X'}

**#集合元素的删除**
如:set1={1,"r","李","A"}
    set1.remove("r")
    print(set1)				#{ 1, '李',''A} ,删除集合中的一个元素
如:set1={1,"r","李","A"}
    set1.clear()
    print(set1)				#{} ,清空集合

**#修改集合中的元素**
如:使用的方法是删除元素后,再重新添加

**#查看集合中不重复的元素的个数,使用len**
如:set1={1,1,2,4,5,5,7,"r","李"}
    print(len(set1))			# 7  ,只统计不重复元素的数量

**#集合的运算中有交集(&),并集(|),差集(-)和(并集-交集:用^表示)的集合**
如:
   set1={1,1,2,4,5,5,7,"r","李"}
   set2={3,4,9,9,0,'p'}
   print(set1&set2)
   print(set1|set2)
   print(set1-set2)
   print(set1^set2)
   #输出为:{4}
	    {0, 1, 2, 'p', 4, 5, 3, 7, 9, 'r', '李'}
	    {1, 2, 5, 7, 'r', '李'}
	    {0, 1, 'p', 3, 2, 5, 7, 9, 'r', '李'}

**#集合转列表**
如:
set1={1,1,2,4,5,5,7,"r","李"}
print(list(set1))
#输出为:[1, 2, 4, 5, 7, '李', 'r']

**#集合转元组**
如:
set1={1,1,2,4,5,5,7,"r","李"}
print(tuple(set1))
#输出为(1, 2, 4, 5, '李', 7, 'r')

**#集合转字典**
如:
set1={1,1,2,4,5,5,7,"r","李"}
set2={1,2,3}
print(dict(zip(set1,set2)))
#输出为{'r': 1, 1: 2, 2: 3}(注:字典的键和值一一对应,没有对应的会直接消影)

**#集合转字符串**
如:
set1={1,1,2,4,5,5,7,"r","李"}
print(str(set1))
#输出为{1, 2, 4, 5, '李', 7, 'r'}

先总结到这里,下次再更新。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值