python优点:
简单易学 、免费开源、丰富的库、可扩展性、可移植性、面向对象、规范的代码。。。
缺点:执行效率相对慢
python应用场景:
Web开发,自动化脚本,爬虫,科学计算。。
注释:
#单行注释
多行注释""" """
变量:
用来存储数据
A=123
变量的类型:
数字-int、float
布尔-True、False
字符串 str
列表 list
Tuple 元组
Dict 字典
变量类型的查看type()
标识符:
构成:
字母、数字、下划线
a b 不能作位标识符
Abc 不等于 abc
命名规则:
三大命名规则:
大驼峰 Abcd
小驼峰 abCd
下划线 a_bcd
不能以其它字符命名
关键字:
定义:特殊的标识符,关键字不可用来当作变量名
如何在Python查看关键字:
windows+R打开命令行
>>> python
>>> import keyword
>>> keyword.kwlist
出现关键字:['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
输入:
Python2.0的输入: raw_input() 将字符串与int类型分开
Python3.0的输入: input() 结果为字符串
输出:
格式:print()
格式化输出:print("%s, %d" % (变量名1,变量名2))
常用的格式符号:
%s -- 字符串
%d -- 十进制整数(int类型)
%f -- 浮点
%c -- 字符
输出的换行:
\n
运算符:
+、-、*、/ --> 加减乘除
// --> 取整(3//2==1)
% 取余
** 幂
优先级 先幂再乘除最后加减
赋值运算符:
=
当个变量赋值 a=123
多个变量赋值 a,b,c=1,2,3
符合赋值运算符:
+=、-=、*=、/=、//=
python常用的数据类型转换:
int()数字整形类型
float()浮点类型
str()字符串类型
list()列表类型
tuple()
if—elif-else判断:
格式:
if 判断条件:
条件成立输出结果
elif 判断条件2:
条件2成立输出结果
else:
条件不成立输出结果
比较运算符:
==、!=、>=、<=、>、<
逻辑运算符(或、且、非):
and 且
or 或
not 非
if嵌套:
格式:
if 判断条件:
if 判断条件2:
成立返回结果
else:
不成立返回结果
while循环使用场景:
while 与 if语法相似
区别是if条件成立,执行一次,while条件成立,重复执行
实例:
a = 0 变量为0
while a < 10: a小于10执行
a += 1 每次循环a=a+1
print(a) 输出结果
while嵌套应用场景:
正倒三角形、九九乘法表
三角实例:
i = 1
while i <= 5:
j = 1
while j <= i:
print("*", end='') end加距离
j += 1
print("\n") \n换行
i += 1
乘法表实例:
i = 1
while i <= 9:
j = 1
while j <= i:
print('%d*%d=%d'% (j, i, j*i), end=' ')
j += 1
print('\n')
i += 1
for循环:
break终止循环
continue跳过当前,进行下一次循环
for循环三角实例:
for i in range(1, 10):
for j in range(1, i):
print('*', end='')
j += 1
print('\n')
i += 1
for循环九九乘法表:
for i in range(1, 10):
for j in range(1, i+1):
print('%d*%d=%d' % (j,i,j*i), end=' ')
j += 1
print('\n')
i += 1
字符串介绍:
格式:变量名=""
输出:print("内容")
格式化输出print('%s,%d' % (str, int))
输入:input()结果为字符串类型
字符串下标和切片:
下标--索引,从0开始
切片:对操作的对象截取一部分(字符串,列表,元组)
格式:
[起始值:结束:步长] 包头不包尾 步长表示间隔几位取值,步长若为符,字符串为倒序排列
字符串常的常见用法:
find与rfind:
find方法:从左检测是否包含内容,如包含返回第一个匹配的索引,不包含返回-1
rfind方法:从右检测是否包含内容,如包含返回第一个匹配的索引,不包含返回-1
index与rindex
用法跟find差不多,只不过:如果匹配不到则报错
count 在返回mystr(start~end之间,出现的次数)
如果存在则返回出现次数,如果不存在不会报错而是返回0
replace替换
用来将字符替换
split
以...分割,通过split可以对字符串进行列表的转换
capitalize
把字符串第一个字母大写
title
把字符串每个单词的首字母大写
endswith
判断是否以XXX结尾,结果为布尔(True,Flase)
lower
将所有的大写转为小写
upper
将所有的小写转为大写
ljust
左对齐 空格填补
rjust
右对齐 空格补齐
center
居中对齐 空格补齐
lstrip
删除左边空格
rstrip
删除右边空格
strip
用于移除字符串头尾指定的字符(默认为空格或换行符)或字符序列
该方法只能删除开头或是结尾的字符,不能删除中间部分的字符
partition
用来根据指定的分隔符将字符串进行分割,返回元组
rpartition
类似于 partition() 方法,只是该方法是从目标字符串的末尾也就是右边开始搜索分割符
splitlines
按行进行分割,注意返回的是列表
isalpha
判断字符串中是否有字母,是True反之false,判断--布尔--返回结果(True,False)
isdigit
判断字符串中是否有数字,是True反之~False
isalnum
判断字符串中是否有数字或者字母,是True反之False
isspace
判断字符串中是否有空格,是True反之False
join
拼接(常用)通常与split联动
字符串的操作:
sel = "ch ss arrr o"
sel = sel.split() #利用split转换成列表['ch', 'ss', 'arrr', 'o']
print(sel)
long = "" #创建空字符 设为最大值
for i in sel: # i为['ch', 'ss', 'arrr', 'o']里的数值
if len(i)>len(long): #进行长度数值的比较
long = i # i的最大值 添加进 long
print(long) #输出
index() 首页/索引 (重点) 因带克斯
ret = my_str.index("o")
print(ret)
ret = my_str.index("l",0,8) # 0,8区间 含头不含尾
print(ret)
count()查找某个字符出现次数 (重点) 抗特
ret = my_str.count("l") #区分大小写
print(ret)
replace() 替换 (重点) 瑞普累思
ret = my_str.replace("h","H",1) #若不写次数默认全部替换
print(ret)
split() 切割分割 (重点) 色普利特
ret = my_str.split(" ")#切割空格
print(ret)
upper() 转换mystr中的小写字母为大写 (重点) 啊盆
print(my_str.upper())
lower() 将大写转小写 (重点) 楼窝儿
print(my_str.lower())
isalpha() 如果mystr所有字符都是字母,则为真,否则假 (重点) 意思次普拉
ret = my_str.isalpha() #空格也算字符
print(ret)
isdigit() 判断是都都是数字 (重点) 意思迪G特
ret =my_str.isdigit()
print(ret)
isalnum() 如果mystr所有字符都是字母或数字则返回TRUE(真)否则假 (重点) 意思IO奶母
ret = my_str.isalnum()
print(ret)
isspace 如果mystr中《只》包含空格,则返回True,否则False (重点) 意思思配词
ret = my_str.isspace()
print(ret)
rfind() 类似于find()函数,不过是从右开始查找
print(my_str.find("l")) #2
print(my_str.rfind("l")) #5
capitalize() 把字符串第一个字符大写
my_str = "i am a student"
ret = my_str.capitalize()
print(ret)
partition() 将字符转换三部分,str前,str和str后 从左开始查找
my_str = "i am a student"
print(my_str.partition("am"))
rpartition() 将字符转换三部分,str前,str和str后 从右开始查找
my_str = "i am a student"
ret = my_str.rpartition("a")
print(ret)
splitlines() 按照行分割,返回一个包含各种作为元素的列表
my_str = "i \nam a\n student"
print(my_str.splitlines())
rjust() 返回一个原字符串右对齐,并使用空格填充长度 width的新字符串
ljust() 返回一个原字符串左对齐,并使用空格填充长度 width的新字符串
join 表示添加
my_str = "——"
list = ["my","name","is","laowang"]
ret = my_str.join(list)
print(ret)
列表的循环遍历:
For i in
List = [1,2,3,4,5]
For i in list:
Print(i)
while也可用
列表的相关操作:
增删改查
增:append extend insert
Append 默认添加到列表尾部
Extend 添加到列表尾部
insert通过下标索引插入数据
B = [1,2]
B.insert(0,3) 0是下标,3是数字
列表的删除 del pop remove
Del 根据下标进行删除
Pop 删除最后一个元素
Remove 根据元素的值进行删除
列表的修改:
第一步:精准定位,通过下标找到要改的数据
第二步:再修改
B = [1,2,3] #把1改为4
B[0] = 4
# B[0] = "4"
print(B)
列表的查询
In not in index count
In 存在
Not in 不存在
Index 存在返回下标,不存在报错 b = a.index("a",1,4) a是要找的,1,4是起始位置
Count a=[1,2,3,4,5,1] 1在列表中出现过几次
列表的嵌套
列表里面再放一个列表
A = [['1,2,3'],[“1,5”]]
元组
访问元组
通过下标访问
Tuple = (“houyue”,1,1.01)
b = Tuple[0]
print(b)
Index 存在返回下标,不存在报错 b = a.index("a",1,4) a是要找的,1,4是起始位置
count a=[1,2,3,4,5,1] 1在列表中出现过几次
字典
格式:
Dict={“Key键”:”value值”}
print(dict["键"]) 如果未找到键则会报错
print(dict.get("键")) 通过get找就算未找到也不会报错,返None
字典常见操作:
查看元素:除了用键(key)查找数据以外还可以用get来查找
修改元素:每个元素都可以修改,只要找到key,就可以肆无忌惮了 a = dict["键"]="更改的值"
字典的添加:直接添加一个键--值, Dict[“键”]=值
字典的删除:
Del
Clear()
Pop
Del 指定删除元素 ---(扩展pop用法类似)
Del dict[“name”]
Print()
Del 删除整个字典
Del dict
Clear()清空字典
Dict.clear()
字典的相关操作:
len()
a = len(dict)
测量字典中,键值对的个数
count()在字典中没法用
keys
a = dict.keys()
返回一个包含字典中所有key的列表
values
a = dict.values()
返回一个包含字典中所有值的列表
items
a = dict.items()
返回一个包含所有(键、值)元组的列表
字典的遍历
格式:for...in...可以遍历字典,遍历可用的数据类型:字符串、列表、元组,字典
遍历字典的key(键)
for key in dict.keys:
print(key)
遍历字典的value(值)
for value in dict.values:
print(value)
遍历字典的项(元素)item
for item in dict.items():
print(item)
遍历键值对
for key,value in dict.items():
print(key,value)
集合介绍
Set={}
集合是一个无序,元素是唯一,集合一般用于元组或者列表的元素的去重
添加 add
Set={1,2,4,5}
A = Set.add(3)
Print(A)
Update 把元素拆分,作为个体传入到集合中
Set.update(“789”)
删除元素
Remove pop discard
Remove:删除集合中的元素,有则删,没有就报错
Pop 随机删除集合中的元素,set中有则删,没有就报错
Discard 删除集合中的元素,有则删,没有就不做任何操作
集合最常见的用法:交集跟并集(& |)
交集------且
Set1={1,2,3,4}
Set2={3,4,5,6}
Set3 = set1 & set2
Print(set3)
>>>{3,4}
并集------或
Set1={1,2,3,4}
Set2={3,4,5,6}
Set3 = set1 | set2
Print(set3)
>>>{1,2,3,4,5,6}