python笔记2

序列与循环

序列是被排成一列的数据,也就是说是有序的数据集合.
python中有三种常用的序列:
1、列表 list [1,2,3,4]
2、元组 tuple (1,2,3,4)
3、字符串 string “abcd”
序列的通用操作
切片([开始:结束:步长])
序列的加法(+)
序列的乘法(*)
成员资格判断(in)
求最大值 (max)
求最小值 (min)
求序列长度 (len)
求和(sum) #字符串不能求和
序列的遍历
foo = ‘abc’
for i in foo:
print(i) #打印的结果为a b c
for i,v in enumerate(foo):
# i为取出的元素的索引,v为每次取出的值
print(i,v) #打印的结果为0 a 1 b 2 c
range函数
range(开始,结束,步长) 生成在设定范围内的整数数据对象
for i in range(10):
print(i)
#打印的结果为0 1 2 3 4 5 6 7 8 9
列表
列表(list)可以按顺序存放数据的容器.数据可以是任意类型.可根据需要对数据进行添加\弹出\修改数据.、
列表是使用方括号括把用逗号分隔的不同的数据项括起来的数据
列表名 = [元素1,元素2,··· ···]
列表的创建
list1 = [‘宫爆鸡丁’, ‘小炒肉’,20]
嵌套列表
menu=[ [“羊肉泡馍”,20],
[“宫保鸡丁”,10],
[“鱼香肉丝”,10]
]
元素取值:
格式:列表名[索引]
menu=[“羊肉泡馍”,“宫保鸡丁”,“鱼香肉丝”]
print(menu[0])
print(menu[1])
print(menu[2])
元素修改:
menu=[“羊肉泡馍”,
“宫保鸡丁”,
“鱼香肉丝”]

menu[0] = ‘红烧肉’
print(menu)
列表的常用方法
列表.append(数据) # 追加数据
列表名.extend(lis) # 一个列表尾部追加另一个列表就是列表扩展
lis3 = lis1 + lis2 # 将lis1和lis2合并生成新的lis3
注意:extend与+的区别
将list2中的元素追加到了list1中,list1发生变化;
+号是产生了一个新的列表,list1和list2都没有变化。

list.insert(index,data) # 在范围内任意位置添加
x=list.pop(索引值) # pop() 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。(X为移除的元素)
列表名.remove(元素名) # 删除首次出现的指定元素,如果列表中不存在要删除的元素,则抛出异常
列表名.clear() # 清空列表,最后得到一个空列表
del 列表名 # 删除整个列表
del 列表名[索引] # 删除列表中的某个元素
列表名.sort() 列表对象的sort方法进行原地排序,会改变原列表
newlist = sorted(oldlist)
内置函数sorted方法排序,并返回修改后的新列表
列表名.reverse() 元素原地反转
列表名.count() 统计元素出现次数
列表推导式
[ 元素 for 元素 in 序列 if 条件 ]
is = [ i for i in range(10) if i %2 == 0 ] # 求10以内的偶数
#可以认为是下面代码的简写形式
lis1 = []
for i in range(10):
if i % 2 ==0:
lis1.append(i)
while循环
While 条件: #当条件成立时循环
循环体
while True:
print(“这是一个死循环”)
break :退出并结束循环
continue :跳出本次循环,从下一次循环继续执行
元组
元组和列表非常相似,也是有序的线性表,本质上最大的区别就是内容不可变,我们可以使用元组来存储,效率会更高
如果元组中只有一个元素,一定要在这个元素后面加一个逗号,否则不认为是元组如下
menu = (‘红烧鱼’) #错
menu = (‘红烧鱼’,) #对
生成器推导式
generator 生成器
它的工作方式是每次处理一个对象,而不是一口气处理,这样做的潜在优点是可以节省大量的内存.
((i+2)**2 for i in range(10))

字符串

字符串包括:切片、转义字符、字符串运算符、字符串格式化。
字符串常用函数和方法
字符串的含义:字符串或串(String)是由数字、字母、下划线组成的一串字符。它是编程语言中表示文本的数据类型。
我们可以使用单引号 ’ 双引号" 或三引号 来创建字符串。
字符串中的字符都是有序的、拥有自己索引(index,也叫下标)从0开始。
索引也可以为负值,负数索引表示从右往左开始计数,最后一个元素索引为-1,倒数第二为-2,以此类推。
切片
Python 访问子字符串,可以使用方括号来截取字符串(切片),方括号里的数字是字符串的索引(index),从0开始。
String[开始索引 : 结束索引 : 步长]
使用切片可以获取字符串中指定范围内的元素
索引必须是整数,最大值是数据长度-1
切片不会改变原对象,而是重新生成了一个新的对象
转义字符
在需要在字符中使用特殊字符时,python用反斜杠()转义字符。常用转义符如下:
(在行尾时) 续行符
\ 反斜杠符号
’ 单引号
" 双引号
\n 换行
\v 纵向制表符
\t 横向制表符
\r 回车
字符串运算符
下表实例变量a值为字符串 “Hello”,b变量值为 “Python”:

  • 连接
  • 重复
    [n] / [ m:n:b ] 截取字符串中的一部分
    in / not in 成员运算符
    r/R 原始字符串 按照字面的意思来使用字符,没有转义特殊或不能打印的字符。 print( r’\n’ ) print( R’\n’ )
    % 格式字符串
    字符串的格式化
    在这里插入图片描述
    Python字符串最常用格式化符号:
    %s 格式化字符串
    %d 格式化整数
    %f 格式化浮点数字,可指定小数点后的精度
    %x 十六进制整数
    字符串常用方法
    1、string.count(str) 返回 str 在 string 里面出现的次数
    2、string.find() 检测字符串中是否包含子字符串 str,返回下标
    3、string.join(seq) 以指定字符串作为分隔符,将 seq 中所有的元素(的字符串表示)合并为一个新的字符串。
    4、string.split() num=string.split(str)) 以 str 为分隔符截取字符串将字符串分割生成列表。
    5、string.strip([chars]) 在字符串上的删除字符串开头和末尾的空格.
    6、string.replace(str1,str2)把 将字符串中的 str1 替换成 str2
    7、string.format()
    格式化输出,它增强了字符串格式化的功能。
    print(’{0:.3f}’.format(1.0/3.0))
    print(’{0}{1}’.format(“a”,”b”))
    总结:
    isalnum() 所有字符都是字母或数字则返 回 True,否则返回 False
    isalpha() 所有字符都是字母则返回 True, 否则返回 False
    isdigit() 如果字符串只包含数字则返回 True 否则返回 False…
    islower() 字符都是小写,则返回 True,否则返回 False
    isnumeric() 如果字符串中只包含数字字符,则返回 True,否则返回 False
    isspace() 如果字符串中只包含空白,则返回 True,否则返回 False.
    isupper() 所有字符都是大写,则返回 True,否则返回 False
    lower() 转换字符串中所有大写字符为小写.
    upper() 转换字符串中的小写字母为大写
    swapcase() 将字符串中大写转换为小写,小写转换为大写
    title() 将字符串中的首字母大写
    字符串常用函数 ord()函数获取字符的整数表示 chr()函数把编码转换为对应的字符