Python基础学习----数据类型,字符串,内置数据结构

关注公众号“码农帮派”,查看更多系列技术文章:

 

Python的数据类型:

int  long  float 

bool : True和False(首字母须大写)

complex(复数):4+2j

 

Python中的字符串:

(1). 单/双引号可以交互使用

可以看出,单纯的使用单/双引号,字符串是等价的,但是当单/双引号作为字符串的一部分,就有区别了,不再是等价的。

 

(2).三引号(三个单/双引号)可以换行:

上面a和b的效果是一样的。

 

Python自然字符串

从上面可以看到,自然字符串就是在普通字符串前面加一个r,效果则为忽略字符串中的转移字符,保留字符串完整的效果。

【注意】上面的代码片段中有中文,需要在文件开头加入 : # coding=utf-8  否则程序报错

 

Python字符串重复:

通过上面的方法可以重复20遍统一字符串。

 

Python子字符串:

|  索引运算符:获得索引位置上的子字符

|  切片运算符: [a,b]获得a到b-1之间的子字符串

上面a[0]和a[5]就是索引运算符,会的字符串索引位置上的字符;剩余的为切片运算符,获得字符串的子字符串。

 

Python内置数据结构:

(1).列表List

列表List可以实现增加,删除和查询操作。

(1-1)列表元素的添加 append(obj)

(1-2)列表元素的插入 insert(index, obj)

(1-3)列表元素的移除 remove(value)

【说明】如果删除的元素不在列表里,会报ValueError异常。

(1-4)删除并返回元素 pop([index])

pop() : 删除并返回列表最后一个元素

pop(index) : 删除并返回列表中下标为index的元素

(1-5)列表元素的查找 index(value,[start], [end])

【说明】查找列表中下标从start(默认0),到下标end(默认len(list) - 1)之间的value的下表。

(1-6)列表元素的排序 sort(cmp=None, key=None, reverse=False)

【说明】reverse默认为False,表示按照首字母升序排列,如果设置reverse=True,表示按照首字母降序排列;

(1-7)列表的翻转 reverse()

(1-8)列表元素的索引 list[index]

【说明】index<0的时候,表示索引反向索引,此时列表最后一个元素的下标为-1,依次索引得到index下标元素;index >= 0,则正向索引,第一个元素下标为0.

(1-9)列表元素的分片 list[start: end]

【说明】获得列表list中下标从start到end - 1之间的子列表,start默认为0,end默认为len(list)。

(1-10)列表元素的遍历

 

# coding=utf-8
list = [["Jim", "Tom", "LiLei", "HanMeimei"], [True, False], [13, 23, 27], []]
for i in range(len(list)):
   rowLen = len(list[i]) # 当前行的长度
   for j in range(len(list[i])):
      print "当前为第",i, "行,长度为: ", rowLen , ";对应的元素为: ", list[i][j]

 

 

 

(1-11)列表的连接

(1-11-a)使用append()进行连接

【说明】append()是将第二个列表当成一个元素,直接添加到列表(list_1)的后面。

(1-11-b)使用+进行连接

(1-11-c)使用*进行连接

 

(2)元组 Tuple

(2-1)元组Tuple

元组中的元素不能进行增加,删除和修改的操作。

(2-2)元组元素的索引  tuple[index]

【说明】当index<0时,表示反向索引,此时元组中最后一个元素的下标是-1,依次向前分别为-1,-2,-3,...;当index>=0时,表示正向索引,此时元组的第一个元素的下标为0,依次为0,1,2,3...

(2-3)元组元素的切片  tuple[start, end]

【说明】获得元组中下标从start开始到end - 1之间元素组成的元组,start默认为0,end默认为len(tuple)

(2-4)元组的“打包”和“解包”

【说明】Python中将元组创建的过程称为“打包”,元组也可以执行“解包”的过程,可以通过“解包”的过程将元组中的元素分别赋值给多个变量。

(2-5)元组的遍历

 

# coding=utf-8
tuple = (("Jim", "LiLei", "Tom"),(13, 23, 27, 18),(True, False),())
for i in range(len(tuple)):
   rowLen = len(tuple[i])
   for j in range(0, rowLen):
      print("当前为第{0}行,长度为{1};对应的元素的值为:{2}".format(i, rowLen, tuple[i][j]))

 

 

(3)集合 Set

| 建立关系

| 去重复

【说明】集合会自动的出去字符串中重复的元素。

 

(4)字典 Dictionary

字典Dictionary可以进行添加,删除和修改的操作。

(4-1)字典元素的访问,添加,修改

【说明】dic[key] = value时,若字典中存在key,则为修改元素的value,若字典中没有key,则为添加新的key-value。

(4-2)字典元素的删除

【说明】del()函数为内建函数,可以直接调用,字典中元素的删除也可以使用pop()函数:

【说明】D.pop(key, [default]) -> value 函数,当key在字典中存在的时候,删除成功会返回key对应的value,若要删除的key在字典中不存在,会返回default,但当不写default时,就会抛出KeyError的异常.

 

(4-3)字典元素的清空

(4-4)字典的遍历

(4-5)字典items()方法

【说明】字典items()方法返回由若干个元组组成的列表,每个元组中包含两个元素,分别是一对key-value中的key和value。

(4-6)利用items()函数对字典进行遍历

(4-7)字典的keys()和values()方法

【说明】keys()方法获得字典中key组成的列表,values()返回字典value的列表。

(4-8)字典的get()方法

【说明】获得字典中某个value,可以使用dict[key],当key不存在的时候,会抛出KeyError的异常,要不想抛出异常,可以使用 get(key, [defaultValue])方法,当存在key时,返回key对应的value,当key不存在时,返回defaultValue。

(4-9)字典的update()方法

【说明】dict_1.update(dict_2)是将dict_2中的key-value键值对复制到dict_1中去,若两个字典中包含相同的key,dict_2中对应的value会覆盖dict_1中对应的value。

(4-10)字典的setdefault()方法

【说明】setdefault(key, [defaultValue])方法,defaultValue默认为None,当字典中不存在key,setdefault()方法会在字典中添加key-value键值对,value会被设置为defaultValue,当字典中存在key时,setdefault()方法将不会执行效果。

【字典中常用的方法】

 

方法名方法说明
items()返回(key,value)元组组成的列表
iteritems()返回指向字典的遍历器
setdefault(key, [defaultValue])创建字典中新的元素,并设置默认的value,defaultValue默认为None
pop(key,[defaultValue])删除key对应的键值对,若key不存在,则返回defaultValue
get(key, [defaultValue])返回索引key对应的value,若不存在key,则返回defaultValue
keys()返回字典中所有key组成的列表
values()返回字典中所有value组成的列表
update(dict)将dict中的key-value键值对更新,添加到字典中
copy()复制字典中所有的key-value键值对

 

(4-11)字典的排序

【说明】使用内建函数sorted()函数对列表和字典进行排序。

 

# coding=utf-8
dict = {"a": "apple", "b": "graple", "c": "orange", "d": "banana"}
# 按照key进行排序
dict_key = sorted(dict.items(), key=lambda d: d[0])
print "按照key排序:",dict_key

# 按照value进行排序
dict_value = sorted(dict.items(), key=lambda d: d[1])
print "按照value排序:",dict_value

 

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值