012 列表
>>> list1=[123]
>>> list2=[234]
>>> list1>list2
False
>>> list3=[123,456]
>>> list1=[234,123]
>>> list2=[123,456]
>>> list1>list2 and list3==list2
True
>>> list4=list1+list2
>>> list4
[234, 123, 123, 456]
>>> list3*3
[123, 456, 123, 456, 123, 456]
>>> list3*=3
>>> list3
[123, 456, 123, 456, 123, 456]
>>> 123 in list3
True
>>> '小甲鱼' not in list3
True
>>> 123 not in list3
False
>>> list5=[123,['小甲鱼','牡丹'],456]
>>> '小甲鱼'in list5
False
>>> '小甲鱼' in list5[1]
True
>>> list5[1][1]
'牡丹'
>>>
列表类型的内置函数
count()计算括号中参数在列表中出现的次数
>>> list3.count(123)
3
index()返回参数在列表中的位置
>>> list3.index(123)
0
>>> list3.index(123,3,5)
4
reverse()将整个列表原地翻转
>>> list3.reverse()
>>> list3
[456, 123, 456, 123, 456, 123]
sort()指定的方式对列表的成员进行排序
>>> list6=[4,2,5,1,9,23,32,0]
>>> list6.sort()
>>> list6
[0, 1, 2, 4, 5, 9, 23, 32]
>>> list6.sort(reverse=True)
>>> list6
[32, 23, 9, 5, 4, 2, 1, 0]
013 元组:戴了枷锁的列表
元组里面的元素不能改变
列表可以任意的修改其中的元素
创建和访问一个元组
>>> tuple1=(1,2,3,4,5,6,7,8)
>>> tuple1
(1, 2, 3, 4, 5, 6, 7, 8)
>>> tuple1[1]
2
>>> tuple1[5:]
(6, 7, 8)
更新和删除一个元组
>>> temp=('小甲鱼','黑夜','迷途','小布丁')
>>> temp=temp[:2]+('怡静',)+temp[2:]
>>> temp
('小甲鱼', '黑夜', '怡静', '迷途', '小布丁')
014 字符串的内置方法
- capitalize() 把字符串的第一个字符改为大写
>>> str2='xiaoxie'
>>> str2.capitalize()
'Xiaoxie'
- casefold() 把整个字符串的所有字符改为小写
>>> str3='DAXIExiaoxie'
>>> str3.casefold()
'daxiexiaoxie'
- center(width) 将字符串居中,并使用空格填充至长度width的新字符串
>>> str3.center(40)
' DAXIExiaoxie '
- count(sbu[,start[,end]])
返回sub在字符串里边出现的次数,start和end参数表示范围,可选。 - encode(encoding='utf-8', errors='strict')
以 encoding 指定的编码格式对字符串进行编码。 - endswith(sub[, start[, end]])
检查字符串是否以 sub 子字符串结束,如果是返回 True,否则返回 False。start 和 end 参数表示范围,可选。 - expandtabs([tabsize=8])
把字符串中的 tab 符号(\t)转换为空格,如不指定参数,默认的空格数是 tabsize=8。 - find(sub[, start[, end]])
检测 sub 是否包含在字符串中,如果有则返回索引值,否则返回 -1,start 和 end 参数表示范围,可选。 - index(sub[, start[, end]])
跟 find 方法一样,不过如果 sub 不在 string 中会产生一个异常。 - isalnum()
如果字符串至少有一个字符并且所有字符都是字母或数字则返回 True,否则返回 False。 - isalpha()
如果字符串至少有一个字符并且所有字符都是字母则返回 True,否则返回 False。 - isdecimal()
如果字符串只包含十进制数字则返回 True,否则返回 False。 - isdigit()
如果字符串只包含数字则返回 True,否则返回 False。 - islower()
如果字符串中至少包含一个区分大小写的字符,并且这些字符都是小写,则返回 True,否则返回 False。 - isnumeric()
如果字符串中只包含数字字符,则返回 True,否则返回 False。 - isspace()
如果字符串中只包含空格,则返回 True,否则返回 False。 - istitle()
如果字符串是标题化(所有的单词都是以大写开始,其余字母均小写),则返回 True,否则返回 False。 - isupper()
如果字符串中至少包含一个区分大小写的字符,并且这些字符都是大写,则返回 True,否则返回 False。 - join(sub)
以字符串作为分隔符,插入到 sub 中所有的字符之间。 - ljust(width)
返回一个左对齐的字符串,并使用空格填充至长度为 width 的新字符串。 - lower()
转换字符串中所有大写字符为小写。 - lstrip()
去掉字符串左边的所有空格 - partition(sub)
找到子字符串 sub,把字符串分成一个 3 元组 (pre_sub, sub, fol_sub),如果字符串中不包含 sub 则返回 ('原字符串', '', '') - replace(old, new[, count])
把字符串中的 old 子字符串替换成 new 子字符串,如果 count 指定,则替换不超过 count 次。 - rfind(sub[, start[, end]])
类似于 find() 方法,不过是从右边开始查找。 - rindex(sub[, start[, end]])
类似于 index() 方法,不过是从右边开始。 - rjust(width)
返回一个右对齐的字符串,并使用空格填充至长度为 width 的新字符串。 - rpartition(sub)
类似于 partition() 方法,不过是从右边开始查找。 - rstrip()
删除字符串末尾的空格。 - split(sep=None, maxsplit=-1)
不带参数默认是以空格为分隔符切片字符串,如果 maxsplit 参数有设置,则仅分隔 maxsplit 个子字符串,返回切片后的子字符串拼接的列表。 - splitlines(([keepends]))
在输出结果里是否去掉换行符,默认为 False,不包含换行符;如果为 True,则保留换行符。。 - startswith(prefix[, start[, end]])
检查字符串是否以 prefix 开头,是则返回 True,否则返回 False。start 和 end 参数可以指定范围检查,可选。 - strip([chars])
删除字符串前边和后边所有的空格,chars 参数可以定制删除的字符,可选。 - swapcase()
翻转字符串中的大小写。 - title()
返回标题化(所有的单词都是以大写开始,其余字母均小写)的字符串。 - translate(table)
根据 table 的规则(可以由 str.maketrans('a', 'b') 定制)转换字符串中的字符。 - upper()
转换字符串中的所有小写字符为大写。 - zfill(width)
返回长度为 width 的字符串,原字符串右对齐,前边用 0 填充。
015 字符串:格式化
>>> "{0} love {1}.{2}".format("1","FishC","com")
'1 love FishC.com'
>>> "{a} love {b}.{c}".format("1","FishC","com")
Traceback (most recent call last):
File "<pyshell#6>", line 1, in <module>
"{a} love {b}.{c}".format("1","FishC","com")
KeyError: 'a'
>>> "{a} love {b}.{c}".format(a="1",b="FishC",c="com")
'1 love FishC.com'
字符串格式化符号含义
%c 格式化字符及其 ASCII 码
%s 格式化字符串
%d 格式化整数
%o 格式化无符号八进制数
%x 格式化无符号十六进制数
%X 格式化无符号十六进制数(大写)
%f 格式化浮点数字,可指定小数点后的精度
%e 用科学计数法格式化浮点数
%E 作用同 %e,用科学计数法格式化浮点数
%g 根据值的大小决定使用 %f 或 %e
%G 作用同 %g,根据值的大小决定使用 %f 或者 %E
格式化操作符辅助命令
m.n m 是显示的最小总宽度,n 是小数点后的位数
- 用于左对齐
- 在正数前面显示加号(+)
在八进制数前面显示 '0o',在十六进制数前面显示 '0x' 或 '0X'
0 显示的数字前面填充 '0' 取代空格
Python 的转义字符及其含义
' 单引号
" 双引号
\a 发出系统响铃声
\b 退格符
\n 换行符
\t 横向制表符(TAB)
\v 纵向制表符
\r 回车符
\f 换页符
\o 八进制数代表的字符
\x 十六进制数代表的字符
\0 表示一个空字符
\ 反斜杠
>>> '%c' % 97
'a'
>>> '%c %c %c' % (97,98,99)
'a b c'
>>> '%d + %d = %d' % (4,5,4+5)
'4 + 5 = 9'
>>> '%f' % 27.658
'27.658000'
>>> '%e' % 27.658
'2.765800e+01'
' 27.7'
>>> '%.2e' %27.658
'2.77e+01'
>>> '%-10d' % 5
'5 '
>>> '%#o' % 10
'0o12'
>>> '%#X' % 108
'0X6C'
016 序列!序列!
- 列表、元组和字符串的共同点
++ 都可以通过索引得到每一个元素
++ 默认索引值总是从0开始
++ 可以通过分片的方法得到一个范围内的元素的集合
++ 有很多共同的操作符(重复操作符、拼接操作符、成员关系操作符)
list()把一个可迭代对象转化为列表
>>> a=list()
>>> a
[]
>>> b='I love FishC.com'
>>> b=list(b)
>>> b
['I', ' ', 'l', 'o', 'v', 'e', ' ', 'F', 'i', 's', 'h', 'C', '.', 'c', 'o', 'm']
>>> c=(1,1,2,3,5,8,13,21,34)
>>> c=list(c)
>>> c
[1, 1, 2, 3, 5, 8, 13, 21, 34]
tuple([iterable])把一个可迭代对象转换为元组
str(obj)把obj对象转换为字符串
max()返回序列或者参数集合中的最大值
min()返回序列或者参数集合中的最小值
sum(iterable[,start=0])返回序列iterable和可选参数start的总和
>>> tuple2=(3.1,2.3,3.4)
>>> sum(tuple2)
8.8
sorted()返回从小到大的排序
>>> numbers=(1,18,32,0,-98,45,73,20)
>>> sorted(numbers)
[-98, 0, 1, 18, 20, 32, 45, 73]
>>> reversed(numbers)
<reversed object at 0x0000023EE499F908>
>>> list(reversed(numbers))
[20, 73, 45, -98, 0, 32, 18, 1]
017 函数:python的乐高积木
用 def 关键字创建一个函数
>>> def MyFirstFunction():
print('这是我创建的第一个函数')
print('我表示很激动')
print('在此,我要感谢各位……')
>>> MyFirstFunction()
这是我创建的第一个函数
我表示很激动
在此,我要感谢各位……
>>> def MySecondFunction(name):
print(name+'我爱你!')
>>> MySecondFunction()
Traceback (most recent call last):
File "<pyshell#31>", line 1, in <module>
MySecondFunction()
TypeError: MySecondFunction() missing 1 required positional argument: 'name'
>>> MySecondFunction('小甲鱼')
小甲鱼我爱你!
>>> MySecondFunction('小鱿鱼')
小鱿鱼我爱你!
>>> def add(num1,num2):
result=num1+num2
print(result)
>>> add(1,2)
3
return()函数的返回值
>>> def add(num1,num2):
return (num1+num2)
>>> print(add(5,6))
11