Python学习路线第二天:列表与字符串

列表的方法

增删改查(增)

  1. .append # 默认增加
  2. .insert # 自定义位置列表插入
  3. .extend # 括号里面传入序列类型

实例1:

.append # 增加列表

代码演示:

>>> wpon = [1,2,3,4,5,6]
>>> wpon
[1, 2, 3, 4, 5, 6]
>>> wpon.append('夏柔')
>>> wpon
[1, 2, 3, 4, 5, 6, '夏柔']

实例1.2:

.insert # 自定义列表位置插入

代码演示:

>>> wpon.insert(0,'夏山如碧,怀柔天下')
>>> wpon
['夏山如碧,怀柔天下', 0, 1, 2, 3, 4, 5, 6, '夏柔']

实例1.3:

.extend # 括号里面传入序列类型

代码演示:

>>> wpon.extend([7,8,9]) # 增加序列
>>> wpon
['夏山如碧,怀柔天下', 0, 1, 2, 3, 4, 5, 6, '夏柔', 7, 8, 9]

增删改查 (删)

  1. .pop # 默认从最后面删除
  2. .pop(1) # 自定义位置上的数据删除
  3. .remove # 指定删除
  4. .clear # 删除所有

实例2.1:

.pop # 默认从最后面删除

代码演示:

>>> wpon.pop()
9
>>> wpon
['夏山如碧,怀柔天下',0, 1, 2, 3, 4, 5, 6, '夏柔', 7, 8]
原来列表: ['夏山如碧,怀柔天下',0, 1, 2, 3, 4, 5, 6, '夏柔', 7, 8,9]

实例2.2:

.pop(1) # 自定义删除

代码演示:

>>> wpon = ['夏山如碧,怀柔天下',0, 1, 2, 3, 4, 5, 6, '夏柔', 7, 8,9]
>>> wpon.pop(1) # 删除位置1上的数字
0
>>> wpon
['夏山如碧,怀柔天下', 1, 2, 3, 4, 5, 6, '夏柔', 7, 8, 9]

实例2.3:

.remove() # 这个括号里面不是填索引, 而是填数据

代码演示:

>>> wpon.remove(3)
>>> wpon
['夏山如碧,怀柔天下', 1, 2, 4, 5, 6, '夏柔', 7, 8, 9]
# 原来列表: ['夏山如碧,怀柔天下', 1, 2, 3, 4, 5, 6, '夏柔', 7, 8, 9]

实例2.4:

.clear() # 删除所有

代码演示:

>>> wpon.clear() # 删除所有
>>> wpon
[]

增删改查(改)

实例3.1:

wpon[5] = 'list' # 代表第三位的字符换成list

代码演示:

>>> wpon
[6, 5, 4, 3, 2, 1]
>>> wpon[5] = 'list'
>>> wpon
[6, 5, 4, 3, 2, 'list']

增删改查(查)

  1. .index # 查询指定的数据的位置
  2. .index(6,3) # 找数字6,从3的位置找
  3. .count # 查询指定的数字在列表中出现了几次

实例4.1:

.index # 查询指定的数据的位置

代码演示:

>>> wpon = [1,2,3,4,5,6,7,8,9]
>>> wpon
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> wpon.index(1) # 查询数字1在第几个位置
0
>>> wpon.index(9) # 查询数字9在第几个位置
8

实例4.2:

.index(6,3) # 找数字6,从3的位置找

代码演示:

>>> wpon
[1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> wpon.index(6,3) 
5

实例4.3:

.count # 查询指定的数字在列表中出现了几次

代码演示:

>>> wpon3 = [1,1,1,1,1,3,4,5,6,7,8,9,111,1] 
>>> wpon3.count(1) # 查询数字1在上面的列表出现了多少次
6

复制方法

实例5:

.copy # 复制a给b 例如: 2 = 1.copy()

代码演示:

>>> wpon = [1,2,3,4,5,6]
>>> wpon
[1, 2, 3, 4, 5, 6]
>>> wpon2
Traceback (most recent call last):
  File "", line 1, in 
NameError: name 'wpon2' is not defined

上面报错, 因为没有wpon2

>>> wpon2 = wpon.copy() # 把wpon的列表复制给wpon2
>>> wpon2 # 复制成功
[1, 2, 3, 4, 5, 6]

返回方法

实例6:

.reverse # 会倒过来原来的列表

代码演示:

>>> wpon = [1,2,3,4,5,6] # 重新编写
>>> wpon.reverse() # 开始倒过来
>>> wpon
[6, 5, 4, 3, 2, 1]

结合简单的print打印:

序列类型的讲解-列表-WordPress极简博客

看不懂没关系… 跟进我的学习进程慢慢来

自己瞎敲了一个:
在这里插入图片描述
代码:

wpon = [1,2,3,4,5,6]
wpon3 = [7,8,9,10]
wpon.insert(0,'夏山如碧,怀柔天下')
wpon.extend([7,8,9])
wpon.reverse()
wpon2 = wpon
w = wpon2+wpon
ww = w+wpon3
www = ww.index(6)
wwww = ww.index(5)
ww.append('666')
print(wpon)
print(wpon2)
print(wpon3)
print(w,"\n",ww)
print("查询结果6的出现结果:",www,"\n查询结果5的出现结果:",wwww)
print("教程结束")

输出结果:

[9, 8, 7, 6, 5, 4, 3, 2, 1, '夏山如碧,怀柔天下']
[9, 8, 7, 6, 5, 4, 3, 2, 1, '夏山如碧,怀柔天下']
[7, 8, 9, 10]
[9, 8, 7, 6, 5, 4, 3, 2, 1, '夏山如碧,怀柔天下', 9, 8, 7, 6, 5, 4, 3, 2, 1, '夏山如碧,怀柔天下'] 
 [9, 8, 7, 6, 5, 4, 3, 2, 1, '夏山如碧,怀柔天下', 9, 8, 7, 6, 5, 4, 3, 2, 1, '夏山如碧,怀柔天下', 7, 8, 9, 10, '666']
查询结果6的出现结果: 3 
查询结果5的出现结果: 4
教程结束
改变排序

实例七:

.sort # 排序会改变原来的位置, 并且由小到大排序

扩展: 可排序 字母 、数字

代码演示:

>>> wpon = [1,2,3,4,5,6]
>>> wpon.reverse()
>>> wpon
[6, 5, 4, 3, 2, 1]
>>> wpon.sort() # 开始由小到大排序
>>> wpon
[1, 2, 3, 4, 5, 6]

实例7.2:

.sort(reverse = True) # 排序会改变原来的位置, 并且由大到小排序

代码演示:

>>> wpon = [1,2,3,4,5,6]
>>> wpon.reverse()
>>> wpon
[6, 5, 4, 3, 2, 1]
>>> wpon.sort(reverse = True) # 开始由大到小排序
>>> wpon
[6,5,4,3,2,1]

查看方法

实例8:

dir(wpon) # 查询所有方法

代码演示:

>>> dir(wpon)
['__add__', '__class__', '__class_getitem__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

元祖的方法

小提示:元祖属于不可变序列类型

  1. 增删改
  2. .count # 查询在整个元祖里,某个数字出现了多少次?
  3. .index # 查询指定的数据的位置

实例1:

.index # 括号里面传入你想要查询的元素, 数据 得到下标 索引

代码演示:

>>> tu = (1,2,3,4,1,2,3) # tu的元祖为 (1,2,3,4,1,2,3)
>>> tu.index(2) # 查询从左往右数的数字2 的位置多少
1 # 和列表一样, 0,1,2,3,4,5,6 ... 
>>> tu.index(2,3) # 和列表一样, 查找数字2从3的位置找
5

实例1.2:

.count # 查询在整个元祖里,某个数字出现了多少次?

代码演示:

>>> tu = (1,2,3,3,3,3,3,4,5,6,7,3,6,4,1,1,5,1,1)
>>> tu
(1, 2, 3, 3, 3, 3, 3, 4, 5, 6, 7, 3, 6, 4, 1, 1, 5, 1, 1)
>>> tu.count(3) # 在上面的元祖里, 3出现了6次
6

在最上面写的小提示: 元祖是不可变对象, 但如果你需要改变它, 转换成列表即可

转化教程:

>>> tu = (1,2,3,4,5,6)
>>> li = list(tu)
>>> tu
(1, 2, 3, 4, 5, 6)
>>> li
[1, 2, 3, 4, 5, 6]

或者利用.copy 复制过去, 改变一下也可以

注: 元祖中只有 count 和 index 两个方法 , 方便查找元祖中的数据

字符串

字符串的拼接(先理解一下):

扩展: 字符串可以相加、乘, 但不能减、除 ;

加法:

>>> wpon = '夏柔'
>>> wpon2 = '很'
>>> wpon3 = '实用'
>>> wpon4 = '的'
>>> wpon5 = 'python学习路线'
>>> wpon6 = '教程'
>>> wpon+wpon4+wpon5+wpon6+wpon2+wpon3
'夏柔的python学习路线教程很实用'

乘法:

>>> wpon*100
'夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔夏柔'

字符串的(查):

  1. .find # 查询 数字 / 字母 的位置
  2. .index # 和列表一样
  3. .count # 和列表一样

实例1:

.find # 查询 数字 / 字母 的位置

代码演示:

>>> wpon = 'xiarouya' 
>>> wpon.find('a',1) # 和列表一样, 从位置1往右查a在第几个
2

扩展: .find 查找不到的话, 不会报错, 但 index 查找不到会报错

解刨: wpon.find(‘a’,1) # 第一个 ‘a’ 是你要查找的元素, 第二个 1 是从哪里找

字符串的(改)

  1. .isdigit() # 判断字符串的值是否都是数字, 如果是返回True, 如果不是返回False
  2. .isalpha() # 判断字符串的值是否都是字母 / 中文 , 如果是返回True, 如果不是返回False
  3. .endswish() # 判断字母结尾是否为字符串的值结尾相同 , 如果是返回True, 如果不是返回False
  4. .startswith() # 判断字母开头是否为字符串的值开头相同, 如果是返回True, 如果不是返回False
  5. .islower() # 判断字符串中的值是否都是小写, 如果是返回True, 如果不是返回False
  6. .isupper() # 判断字符串中的值是否都是大写, 如果是返回True, 如果不是返回False

实例2:

.isdigit() # 判断字符串的值是否都是数字, 如果是返回True, 如果不是返回False

代码演示:

>>> wpon = 'wpon2' # 必须是纯数字, 包含字母返回就是False
>>> wpon.isdigit()
False
>>> wpon = '123'
>>> wpon.isdigit()
True

实例2.2:

.isalpha() # 判断字符串的值是否都是字母 / 中文, 如果是返回True, 如果不是返回False

代码演示:

>>> wpon = 'wpon2'
>>> wpon.isdigit()
False
>>> wpon = '123'
>>> wpon.isdigit()
True
>>> wpon = 'wpon1'
>>> wpon.isalpha()
False
>>> wpon = 'wpon'
>>> wpon.isalpha()
True
>>> '夏柔'.isalpha()
True
>>> wpon = '夏柔'
>>> wpon.isalpha()
True

实例2.3:

.endswith() # 判断字母结尾是否为字符串的值结尾相同 , 如果是返回True, 如果不是返回False

代码演示:

>>> wpon = 'wponwpon'
>>> wpon.endswith('w')
False
>>> wpon.endswith('n')
True

实例2.4:

.startswith() # 判断字母开头是否为字符串的值开头相同, 如果是返回True, 如果不是返回False

代码演示:

>>> wpon = 'wponxiarouwww.wpon.cn'
>>> wpon.startswith('w')
True
>>> wpon.startswith('n')
False

实例2.5:

.islower() # 判断字符串中的值是否都是小写, 如果是返回True, 如果不是返回False

代码演示:

>>> wpon = 'wponW'
>>> wpon.islower()
False
>>> wpon = 'wpon'
>>> wpon.islower()
True

实例2.6:

.isupper() # 判断字符串中的值是否都是大写, 如果是返回True, 如果不是返回False

代码演示:

>>> wpon = 'wponW'
>>> wpon.isupper()
False
>>> wpon = 'WPON'
>>> wpon.isupper()
True

字符串的改(2)

  1. .upper() # 将所有字母转换成大写
  2. .lower() # 将所有字母转换成小写
  3. .strip() # 去除两边多余的空格
  4. .capitalize() # 给首字母大写
  5. .title() # 在每个单词(空格隔开算1个) 的首字母转换成大写
  6. .split() # 切割指定字母后, 自动换成列表
  7. .split(‘a’,3) # 在列表中, 假设出现十个a, 则从左往右数只去除前三个, 剩下继续输出
  8. .replace() # 替换在列表中所有被选中的值

实例3:

.upper() # 将所有字母转换成大写

代码演示:

>>> wpon = 'WPON'
>>> wpon.isupper()
True
>>> wpon = 'wpon'
>>> wpon.upper()
'WPON'

但转换后不会保存,需要给变量值

代码演示:

>>> wpon = 'wpon'
>>> w = wpon.upper()
>>> w
'WPON'

实例3.2:

.lower() # 将所有字母转换成大写

代码演示:

>>> wpon = 'WPON'
>>> wpon
'WPON'
>>> wpon.lower()
'wpon'
>>> wpon
'WPON'

但转换后不会保存,需要给变量值

代码演示:

>>> wpon = 'WPON' 
>>> w = wpon.lower() 
>>> w 
'wpon'

实例3.3:

.strip() # 去除两边多余的空格

代码演示:

>>> wpon = '    wpon    wpon    '
>>> wpon
'    wpon    wpon    '
>>> wpon.strip()
'wpon    wpon'

单独去除左边的空格:

>>> wpon
'    wpon    wpon    '
>>> wpon.lstrip() # lstrip 代表拼音left缩写
'wpon    wpon    '

单独去除右边的空格:

>>> wpon
'    wpon    wpon    '
>>> wpon.rstrip() # rstrip 代表拼音right缩写
'    wpon    wpon'

因为上面都没有保存, 和之前一样, 变量即可

例如: w = wpon.lstrip() 即 w = wpon.rstrip …

实例3.4:

.capitalize() # 给首字母大写

代码演示:

>>> wpon = 'wpon wpon wpon'
>>> wpon.capitalize()
'Wpon wpon wpon'

实例3.5:

.title() # 在每个字符串(空格隔开算1个) 的首字母转换成大写

代码演示:

>>> wpon = 'wpon wpon xiarou lovexiarou '
>>> wpon.title()
'Wpon Wpon Xiarou Lovexiarou '

实例3.6:

.split() # 切割指定字母后, 自动换成列表

序列类型的讲解-字符串-WordPress极简博客

代码演示:

wpon = 'wpxhswp55p'
w = wpon.split('p')
 
print(w)
输出结果: ['w', 'xhsw', '55', '']

当然, 如果结尾p 去掉, 则输出结果没有 ’ ’ ;

实例3.7:

如果需要去除自定义的字母数量, 则为:

.split('a',3) # 在列表中, 假设出现十个a, 则从左往右数只去除前三个, 剩下继续输出

代码演示:

序列类型的讲解-字符串-WordPress极简博客

wpon = 'a666a555a444a333' # 总共有4个a
w = wpon.split('a',2)
print(w)

则打印结果为: [’’, ‘666’, ‘555a444a333’] 前两个a已去除

实例3.8:

.replace() # 替换在列表中所有被选中的值

代码演示:

序列类型的讲解-字符串-WordPress极简博客

wpon = 'wpon   wpon   wpon   ' # 每次空4次格
w = wpon.replace('   ','') # 将空格3次输入, 转换成不需要空格的 ''
print(w)

贴心小提示: 替换成别的也可以哦~

字符串的转义

字符串转义 含义

  • \n 换行
  • \t 水平制表符
  • \b 退格
  • \r 回车,当前位置移到本行开头
  • \ 代表反斜杠
  • ’ 代表一个单引号
  • \0 代表空字符
  • \a 系统提示音

如何敲写:

\n : print(" 520\n520")
\t : print(" 520\t521")
\r : print(" 520\r522")
\\ : print(" 520\\523")
\' : print(" 520\'524")
\0 : print(" 520\0525")
\a : print(" 520\a526")

写的不怎么样, 只是笔记记录下学python的过程, 希望陌生人可以给我一个赞~

猜你喜欢

转载自blog.csdn.net/YSP050310/article/details/110194614