1. 字符串、元组、列表、字典的索引都是从0开始
2. Python内置不含数组,数组和矩阵都属于NumPy
3. print函数并列字符自动拼接
print('你''在''说''什么')
相当于
print('你'+'在'+'说'+'什么')
输出结果为:你在说什么
4.原始字符串的输出
对于以下命令
path = 'D:\new_project'
print (path)
输出结果为
D:
ew_project
原因在于原始路径中含有转义字符’\n’,输出时出现换行效果,想要输出原始的路径字符串,需要再次使用转义字符“\”,使“\n”从换行符再次转换成普通字符。
path = 'D:\\new_project'
print (path)
以上代码的输出结果为D:\new_project
,由此可见:“\”是转义字符,它能够将第2个“\”从转义字符转回普通字符,从而“\n”就不再起到换行符的作用。
这样操作虽然简单,但遇到下方路径,就会有些麻烦
path = 'D:\new_project\test\nt\files\data'
采用‘\’进行转义输出时,需要使用多个‘\’:
path = 'D:\\new_project\\test\\nt\\files\\data'
此时在前面加上r可以解决问题,
path = r'D:\new_project\test\nt\files\data'
特殊:
当末尾出现‘\’结尾的路径时,需要将‘\’并列输出,原始字符串以‘\’结尾输出会抛出异常,示例如下:
path = r'D:\new_project\test\nt\files\data\\' # 末尾保持原样
path = r'D:\new_project\test\nt\files\data\' # 提示异常
当遇到这种需求时,需要对末尾的“\”单独进行转义处理,并和前面的字符串连接。
示例代码如下:(正确示例)
path = r'D:\new_project\test\nt\files\data''\\'
print (path)
以下是一些实验结果:
>>> path = r'D:\new_project\test\nt\files\data''\\'
>>> print(path)
D:\new_project\test\nt\files\data\
>>> path = r'D:\new_project\test\nt\files\data'+'\\'
>>> print(path)
D:\new_project\test\nt\files\data\
>>> path = r'D:\new_project\test\nt\files\data\\'
>>> print(path)
D:\new_project\test\nt\files\data\\
>>> path = r'D:\new_project\test\nt\files\data\'
File "<stdin>", line 1
path = r'D:\new_project\test\nt\files\data\'
^
SyntaxError: EOL while scanning string literal
5. 去除字符串两边的指定内容
字符串去除两侧指定内容的方法有三种:
strip(chars) :去除字符串两侧的指定内容,并且,可以同时去除多个相同的指定内容;参数chars为指定的一个或多个字符,不填入该参数则去除字符串两侧所有空格。
lstrip(chars):去除字符串左侧的指定内容,并且,可以同时去除多个相同的指定内容;参数chars为指定的一个或多个字符,不填入该参数则去除字符串左侧所有空格。
rstrip(chars):去除字符串右侧的指定内容,并且,可以同时去除多个相同的指定内容;参数chars为指定的一个或多个字符,不填入该参数则去除字符串右侧所有空格。
6. 字符串查询
字符串查询的方法有两种:
第一种:index(sub,start,end)和rindex(sub,start,end)
index方法是从左至右查询,rindex方法是从右至左查询;
参数sub是指被查询的字符或字符串,参数start是查询的起始位置,参数end是查询的终止位置(终止位置不在查询范围内);
参数start和参数end可以同时省略,这时为查询字符串中全部字符;也可以只省略参数end,表示查询范围为起始位置至末尾。
返回值为第一个找到的值的索引。
第二种:find(sub,start,end)和rfind(sub,start,end)
这两个函数和index函数以及rindex函数作用相同,并且用法相同.
两者的区别在于,当没有查询结果时,index函数与rindex函数会体制发生错误:ValueError:substring not find
而另外的两个函数,find函数和rfind函数,在没有查询结果时,返回值为-1。而另外的两个函数,find函数和rfind函数,在没有查询结果时,返回值为-1。
7. 格式化输出
“%s”是一个格式符,其中“s”表示字符串,也就是说“%s”表示这个格式符所在的位置内容必须用字符串替代;而接下来的一个“%”表示进行格式化的操作,也就是要把这个符号后方的内容替换掉前面的“%s”,来形成我们想要的字符串内容。
多个格式化输出
id = input('请输入您的身份证号:')
print('您的出生日期为:%s年%s月%s日' % (id[6:10], id[10:12], id[12:14]))
强调,以上代码中的符号必须为英文半角符号,切勿使用中文符号或英文全角符号。(字符串中包含的冒号除外)
format(args, kwargs)格式化输出
format(args,kwargs):对字符串进行格式化的函数;参数args表示可以输入多个参数(argument),参数间以逗号分隔;参数kwargs表示可以输入多个关键词参数,关键字函数的写法例如:age=’18’,age为关键字,’18’为这个关键字对应的值。
id = input('请输入您的身份证号:')
print('您的出生日期为:{}年{}月{}日'.format(id[6:10], id[10:12], id[12:14]))
print('您的出生日期为:{1}年{0}月{2}日'.format(id[10:12], id[6:10], id[12:14]))
print('您的出生日期为:{year}年{month}月{day}日'.format(month=id[10:12], year=id[6:10], day=id[12:14]))
运行结果如下:
请输入您的身份证号:110115199001122511
您的出生日期为:1990年01月12日
您的出生日期为:1990年01月12日
您的出生日期为:1990年01月12日
8 列表添加
末位添加append(object)
合并列表extend(iterable),iteralbe为可迭代对象
lst=['a','b','c']
print(lst.extend(['d','e']))
# 结果为
['a','b','c','d','e']
插入元素 insert(index,objecxt)
取出元素 pop(index),原列表发生改变
删除元素 remove(object)、del 列表[index]
删除指定内容元素:使用remove(object)函数可以删除列表中首次出现的与参数相同的元素,如果列表中不存在与参数相同的元素则抛出异常。
lst = ['你','我','他','我','你','他'] # 创建列表
lst.remove('我') # 删除从左至右第一个与指定内容匹配的元素
print (lst)
# 以上代码运行结果:['你', '他', '我', '你', '他']
删除单个指定位置元素:del 列表[索引位置]
lst = ['我','是','个','帅','哥'] # 创建列表
del lst[2] # 删除指定位置的元素
print (lst)
# 以上代码运行结果:['我', '是', '帅', '哥']
删除多个指定位置元素:del 列表[起始位置:终止位置]
lst = ['我','是','个','大',帅','哥'] # 创建列表
del lst[2:4] # 删除从起始位置至终止位置的多个元素
print (lst)
# 以上代码运行结果:['我', '是', '帅', '哥']
Python中区间为左闭右开
删除末尾元素:使用pop()函数,参数为空即可
lst = ['我','真','是','帅','哥'] # 创建列表
lst.pop() # 删除末尾的元素
print (lst)
# 以上代码运行结果:['我', '真', '是', '帅']
删除所有元素清空所有元素:lst.clear()或者 lst del[:]
lst=[1,2,3,4,5]
print(lst.clear())
print(lst del[:])
# 输出结果都为 []
9 列表排序
反向排序: reverse()
升降排序:sort(cmp,key,reverse)函数,参数cmp为函数,参数key为函数,reverse为布尔值(True和False)。参数为空时默认为升序排列。通过设置参数reverse=True,转换为降序排列。
升降序排列也可以使用函数sorted(iterable,cmp,key,reverse),参数iterable为可迭代对象;参数cmp为函数,参数key为函数,reverse为布尔值。
sorted()函数不会改变原列表。
10 元组转换为列表
使用list(iterable)函数,参数iterable为可迭代对象。
tup=(3,2,1,4,5,6)
lst=list(tup)
print(lst)
# 结果为
[3,2,1,4,5,6]