琐碎知识点:
---Python的主要集成开发环境(IDE,Integrated Development Environment )是pycharm。
---字符格式化输出:
占位符: %s s=string, %d d=digit,%f f=float
三个单引号的作用除了注释以外,还可以打印多行。
.isdigit():判断一个值是不是数字
---数据运算:数据类型包括数字,布尔,字符串
数字:整型,长整型(L),在Python3中已经不区分整型和长整型,统一称为整型
布尔:只有两种状态:真True和假False
字符串:.isdigit()是字符串的属性
在计算机中,一切皆为对象。世界万物,皆为对象,一切对象皆可分类。
---循环loop
有限循环,次数有限;无限循环=死循环
for while
---数据类型:整数,字符串,列表,元祖
对列表的操作:
1)查询:
索引(下标)都是从0开始的
切片法:(a[1:-1])最后一个值取不到,a[1:]可以取到最后一个值,a[1:-1:x],其中x为步长,正数表示顺序为从左到右,负数表示从右到左。
.count('content'):查询某个元素出现的次数
.index('content'):根据内容找其对应的位置
'string' in list 有返回true,无返回false
2)增加:
a.append('string'):追加在列表的最后位置
a.insert(index,'string'):插入字符到指定位置
a.extend :扩展,将一个列表的元素添加到另一个列表中
3)修改:
a.[index]='new string'
a.[start:end]=[a,b,c]
4)删除:
.remove(‘string’)
.pop(index) 删除之后用变量接收这个值可以打印出删除的值(若不指定删除哪个值默认会删除最后一个)
del a 删除整个列表,del a[index]
a.clear():清空列表
5)排序:
.sort() :默认从小到大排序 .sort(reverse=true) :从大到小排序
b=sorted(a):从小到大排序
.reverse()先调用reverse()方法,然后打印a
是两个函数,无返回值,不能写成print(a.sort())
---元祖
称为只读列表,数据可以被查询,但不能被修改。元祖中只有一个元素,还需加上,号,如(1,)
for i in enumerate(序列,1):从1开始编号
for i c in enumerate(序列,2):多加一个参数后,在两个变量之间可以增加任何格式,如print(i,“>>>”,v)
len(list):list的长度
---字典
Python唯一的映射类型,采用键值对(key-value)的形式存储数据。是无序的,键是唯一的,不能修改。
字典的两大特点:无序,键唯一。
不可变类型:整型,字符串,元祖
可变类型:列表,字典
定义字典:dic={'name':‘alex’,'age':35}或dic=dict(((‘name’,‘alex’),))
对字典的操作:
增加:
dic['键']='值'
dic.setdefault(‘键’,‘值’)如果键存在,则不起作用,如果键没有则会增加。
.setdefault有返回值,返回的是键对应的值,如果新增的键存在,则返回原来的键对应的值,否则返回新加的值。
查询:
通过键查找对应的值
查询键,dic.keys()--字典中所有的键。
print(dic.keys())不是一个列表的类型,是一个dict-keys的类型,有需要转换为list。
print(list(dic.keys()))
查询值,dic.values()--字典中所有的值。
dic.items()--字典中所有的键值对。
修改:
把键取出来,重新赋值。
dic['键']=‘值’
dic1.update(dic2)把dic2加入到dic1中,如果有重复的键,则会修改原来的值。
删除:
del删除键对应的值和键,del dic['键'];del dic删除字典。
.clear()清空字典,但是并不删除字典。
.pop()把键值对删除,并返回删除的值。
.popitem()随机删除一组键值对。
其他操作:
dic=dict.fromkeys()生成字典。
排序:
根据键来排序,sorted(dic),sorted(dic.items())
根据值进行排序,sorted(dic.values())
遍历:
for i in dic:print(i)打印键
for i in dic:print(i,dic[i])打印的是键值对
for i ,v indic.items:print(i,v)打印键值对
字符串操作:
乘法操作:print(“hello”*x)打印x遍hello
索引切片:print(“hello”[2:])打印llo
存在判断:print(1 in [1,2])
格式化输出:print(“hello %s”%“world”)
字符串拼接:a=‘123’ b=‘ABC’ c=a+b +(为每个字符串开辟内存空间,占内存)
join拼接方法--c=‘ ’.join([a,b])
字符串的内置方法:
(常用的方法)
str=“hello kitty”’
str.count(‘t’):统计t的个数
str.center(20,‘-’):打印20个字符,str位于中间,其余位置用-代替
str.startswith(‘h’):判断以哪个字符开头,返回值为布尔值
str.find(‘t’):查找第一个字符出现的位置并返回字符的索引值
str="hello kitty {name} is {age}"
str.format(name=‘alex’,age=22):格式化输出,输出hello kitty alex is 22
str.lower():大写变成小写
str.upper():小写变成大写
str.strip():去掉左右的空格和换行
str.replace(‘kitty’,‘world’,x):一个字符替换另一个字符,x表示替换多少次,默认全部替换
str.split(‘ ’):将字符串分割以空格分割成几部分,放在列表中,用join结合
(不常用的方法)
str.capitalize():把字符串的首字母大写
str.endwith(‘y’):判断以哪个字符结尾,返回值为布尔值
str.expandtabs(tabsize=x):设定hello\t kitty之间有x个空格
str.format_map(’name’:‘alex’,‘age’:22):格式化输出,参数放的是字典
str.index(‘t’):如果要查找的内容没有会报错,find返回-1
str.isalnum():是否仅包含字符串个数字,返回值为布尔值
str.decimal():是否为十进制
str.isdigit():判断是否为数字--整型
str.isnumeric():同isdigit()
str.isidentifier():检验是否为非法变量
str.islower():判断是否全为小写
str.isupper():判断是否全为大写
str.isspace():判断是否为空格
str.istitle():判断是否为标题(每个字母的首字母大写)
str.swapcase():大写变小写,小写变大写
str.ljust(20,‘-’):在左边
str.rjust(20,‘-’):在右边
str.lstrip():去掉左边的空格
str.rstrip():去掉右边的空格
str.rfind(‘t’):从右向左查找,找到从左到右的第一个找到的索引值
str.rsplit(‘ ’,x):从右向左开始分割x次
str.title():将字符串变成标题的形式