Python字符串与列表

2018-06-08 17:14 更新


概念:

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

序列都可以进行的操作包括索引,切片,加,乘,检查成员。

此外,Python已经内置确定序列的长度以及确定最大和最小的元素的方法。

列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。

列表的数据项不需要具有相同的类型

   1. 掌握列表基础知识

1.1 列表的特点:

支持异构:一个列表中含不同类型的对象

 支持嵌套:即列表中的元素可以是列表

可变:支持通过索引,切片,进行修改

1.2 如何定义列表:

方法一(推荐):[];

例:list1=[1,3,5]
list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"];
list3 = [[1,2,3], "a", "b", "c", "d"];

方法二:使用内置函数list(): 内建函数list(a_sequence) 可以将一个序列转为列表

 

例1:
>>> str1="dddgf"
>>> list1=list(str1)
>>> list1
['d', 'd', 'd', 'g', 'f']

例2:

2. 访问列表中的值

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
 
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]

3. 更新列表

list = ['physics', 'chemistry', 1997, 1998];
 
print "Value available at index 2 : "
print list[2];
list[2] = 2001;
print "New value available at index 2 : "
print list[2];

4. 列表的索引和切片:

classmates = ['Madking','Agon', 'Michael', 'Bob', 'Tracy']
print classmates[0]
'Michael'
print classmates[1]
'Bob'
print classmates[2]
'Tracy'
print classmates[3]
print classmates[1:-2]
print classmates[1:3]
print classmates[::2]


5. 掌握列表相关方法:   

2.1  append():向列表中追加元素

例如:

 

2.2 extend():追加可迭代对象中所有元素

      例1:

list2=[1,2,3]
list3=[]
list3.extend(list2)

例2

2.3 insert():在指定索引位置插入

插入例子:

2.4 pop():按照索引弹出元素,返回值为该元素。默认弹出最后一个元素。

例如:

classmates = ['Michael', 'Bob', 'Tracy']
classmates.pop()
classmates.pop(1)
print classmates

 

2.5 remove():按照元素值弹出第一个匹配项

例如:

 

aList = [123, 'xyz', 'zara', 'abc', 'xyz'];
 
aList.remove('xyz');
print "List : ", aList;
aList.remove('abc');
print "List : ", aList;

 

2.6 count():统计指定值出现的次数

2.7 index():某个值第一次出现的位置

例如:

2.8 reverse():反向存放

例如:

2.9  查询遍历:

for I in list
for i,k enumerate(li)

2.10 sort():排序

aList = [123, 'xyz', 'zara', 'abc', 'xyz'];
 
aList.sort();
print "List : ", aList;

 

2.11 max() min()

6. 掌握序列类型操作:序列类型包括:字符串、列表、元组

3.1 +连接*重复

例如:

实例

 

3.2 max():求最大值、min():求最小值

例如:

7. 掌握列表生成式

列表生成式,是Python内置的一种极其强大的生成list的表达式。

4.1 用于:基于已有列表生成新列表

4.2 语法结构:

列表生成式的书写格式:[x*x for x in range(1 , 11)]

第一:把要生成的元素 x*x 放到前面

第二:后面跟上for循环

这样就可以把list创建出来。

for循环后面还可以加上if判断

4.3 举例:

1到10之间的偶数平方再除以2  作为新列表元素

1到10之间的偶数 ,作为新列表元素

 


    

4.4 特点:一次性生成新列表,如果列表数据过大,会消耗大量资源。


三、字符串

1.2 掌握字符串常用方法

1.2.1 s.find() s.join() s.split() s.replace() s.strip() 
1.2.2 s. isalnum()/s.isalpha()/s.isdigit()
1.2.3 s.upper()/      s.lower()
1.2.4 s.count()
1.2.5 len(s)

【考核要求】

1. 序列类型常用操作

a) 索引和切片

1.1.1 索引:例:s[0]从左向右:索引从0开始 ;从右向左:索引从-1开始

1.1.2 切片:例:s[0:2]

Print a[:2]

 

实例:

url = “www.python.org”

print url[4:10]

 

实例:

print "Hello"[:3] 从第一个字符开始截取

print "Hello"[0:] 从第一个字符开始截取,一直截取到最后

print "Hello"[:] 道理同(2)

 

1.1.3 扩展切片:指定步长,例:s[0:9:2]

print ABCDEFG[::2]

 

b) 掌握格式化输出:使用python输出各种类型的字符串、整数、浮点数

格式:

print “字符串  %format1 %format2…  ”  % (变量或值1,变量或值2...)

符号及其对应输出格式:

%d            十进制整数

%f                浮点数

%s                字符串

%%                用于输出符号%

 

                       实例:

                      

Name = ‘张飞’
Age= 16
print ‘my name is %s’ % Name
print ‘I am 16 years old’% Age
print "My name is %s and weight is %d kg!" % ('Zara', 21)

c) 强制类型转化

int():强制转换为整型,

例如:

注意:只能将由数字组成的字符串转换为整型


错误用法

 

float():强制转换为浮点型例如

 

str():强制转换为字符串例如:


 


 

d) 字符串转换实例:格式化输出菜单列表;将用户的输入数值转化整型并验证

 

2. 掌握字符串常用方法

s.find(t):查找子串t,找到返回首次出现位置的索引值,找不到则返回-1

实例:

 

s.split(sep):使用sep作为分割符,列表返回结果。

实例:str=”www.baidu.com”

str.split(".")  得到["www ","baidu","com"]序列

  实例:

  


s.join(iter) 使用s作为连接符连接序列iter中所有元素

例如:list2=["h","e","l","l","o"," .","c","o","m"]

     “”.join(list2)

实例:

   

    

 

s.replace(old,new):替换

实例

 


 


      

s. strip(t): 删掉开头和结尾的字符t(没有参数t则删除空白符)

如:删除空白符 s1.strip()

s.isalpha()/s.isdigit(): /是否为字母/是否为数字

      

结果是bool类型

s.upper()/   s.lower():所有字母转化为大写字母/小写字母,

s.count(t) 统计t出现的次数

   


    

本文出自 “一盏烛光” 博客,谢绝转载!

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号