简介
Python是一门非常简洁的语言。
Python是一门解释性语言,使用缩进对齐组织代码执行。
1、6个标准的数据类型:
Number(数字) String(字符串) List(列表) Tuple(元组) Sets(集合) Dictionart(字典)
其中,
Number(数字) String(字符串) Tuple(元组) Sets(集合) 是不可变的数据
List(列表) Dictionart(字典) 是可变的数据
2、基础语法:
运算符:
比较运算符 | <、<=、>、>=、==、!= | 转义字符 | \n换行 ? \'引号 ? ?\\反斜杠? | 算术运算符 | + 、- 、 * 、? /? (浮点数的除法)、//(整数的除法)、?**(?幂方 ) | 逻辑运算符 | and,or,not? | 赋值运算符 | = | 身份运算符 | is、 is not、in 、not in |
Python的比较运算符可以连用,并且没有自增自减
位运算和算术运算>比较运算>复制运算
3、选择结构
单分支结构: | if ?条件语句:? ? ? ? ?#条件语句不能赋值 但是可以== ?print(" ? ") | 双分支结构: | if? ?条件语句?? else? ?条件语句 | 三元条件运算符: | 条件为真时的指 ? if ?(条件表达式)else ?条件为假时的值 | 多分支结构: | if? ?条件语句 elif? ?条件语句 |
4、循环结构
while循环结构:
a = 1
sum=0
while a<=100:
sum = sum + a
a =a+1
print(sum)
break与continue的区别:
break ?结束整个循环 continue 结束本次循环
5、zip()并行列表
并行列表操作的方法
names = ("jiaqi","ziyu","jiayu") ages = (16,17,18) jobs = ("programmer","art","player")
for name,age,job in zip(names,ages,jobs): ? ? print("{0}--{1}--{2}".format(name,age,job))
for i in range(3): ? ? print("{0}--{1}--{2}".format(names[i],ages[i],jobs[i]))
6、生成器
生成器只能调用一次,第二次调用时为空
a = (x for x in range(4))
print(a)
<generator object <genexpr> at 0x000001A12C2004A0>
a = (x for x in range(4))
print(tuple(a))
print(tuple(a))
(0, 1, 2, 3)
0
7、字符串切片slice操作
(起始偏移量:终止偏移量:步长) ?(起始偏移量:终止偏移量)包头不包尾 ? ?步长为-1 从右到左反向提取? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
8、format函数 ?
a = "名字是:{0},年龄是:{1}"
b = a.format("胖胖",18)
b #输出b
'名字是:胖胖,年龄是:18'
9、填充和对齐
^ < > 分别是居中对齐 左对齐 右对齐,后面带宽度 :后面带填充的字符,只能是一个字符,不指定的话默认是空格
>>>"{:*>8}".format("245")
'*****245'
>>>"我是{0},我喜欢的数字是{1:*^8}".format(胖胖,666)
'我是胖胖,我喜欢的数字是**666***’
10、序列
range()可以帮助我们非常方便的创建整数列表,语法格式为: range[[start] end [step]] start ?可选 否则默认为0 end ?必选 ?表示结尾数字 step ?可选 ?表示步长
list(range(20,30,4))
[20, 24, 28]
列表元素的增加:
append()
a = [20,40]
a.append(80)
a [20,40,80]
+
a = [20,40]
a = a +[50]
[20,40,50]
extend()
a = [20,40]
a.extend([50,60])
[20,40,50,60]
insert() ?插入到任意位置
a = [10,20,30]
a.insert(2,100)
a
[10,20,100,30]
乘法扩展
[10,20]*3
[10,20,10,20,10,20]
列表元素删除:
del
A = [100,200,300,400]
del A[2]
A = [100,200,400]
pop()? ? 删除指定位置的元素,如果未指定就删除列表最后一个元素
a = [10,20,30,40,50]
a.pop()
a = [10,20,30,40]
a.pop(1)
a = [10,30,40]
remove()删除首次出现的元素
a = [10,20,30,40,50]
a.remove[20]
a = [10,30,40,50]
列表元素的访问和计数
index()
a = [10,20,30,40,50,20,30,20,30]
a.index(20)
1
a.index(20,3) 从索引位置往后的第一个20
5
count()? ?获得出现几次??查找某个字符的数量
len()? ? ??返回列表长度
a = [10,20,30]
len(a)
3
11、元组创建
a = (1,2,3) ? 或者 ?a= 1,2,3 只有一个时a=(1,)
12、字典
1)定义方式:
a ={'name':'jiaqi','age':18,'job':'programmer'}
a = dict(name='jiaqi',age=18,job='programmer')
a = dict([("name","jiaqi"),("age",18)])
2)字典元素的访问:
a={'name':'jiaqi','age':18,'job':'programmer'}
a['name']
'jiaqi'
get()
a.get('name')? ? ?a.get('name','ddd')没有时出现'ddd'
a.items() ? ? ?#列出所有的键值对
dict_items([('name', 'jiaqi'), ('age', 18), ('job', 'programmer')])
a.keys()
dict_items([('name', 'jiaqi'), ('age', 18), ('job', 'programmer')])
len(a)
3
"name"in a
True
3)字典元素的添加修改和删除:
update()? ?将新字典中所有键值对全部添加到旧字典对象上,如果重复,则直接覆盖
b={'name':'jiaqi','money':1000','sex':'nv'}
a.update(b)
a {'name':'jiaqi','age':17,'job':'programmer','money':1000,'sex':'nv'}
del()? ?删除指定键
pop
b=a.pop('age') ? b ?17 ? 删除同时将值赋给了b
clear()? ?删除所有键
4)序列解包:?
?对多个变量赋值
s={'name':'jiaqi','age':18,'job':'programmer'}
name,age,job=s #默认对键进行操作
name
‘name’
name,age,job=s.items() #对键值进行操作
name
{'name','jiaqi'}
name,age,job=s.values() #对值进行操作
name
‘jiaqi’
13、表格数据使用和列表存储
r1={"name":"小一","age":18,"salary":30000,"city":"北京"}
r2={"name":"小二","age":17,"salary":40000,"city":"上海"}
r3={"name":"小三","age":16,"salary":60000,"city":"深圳"}
tb = [r1,r2,r3]
#获得第二行人的薪资
print(tb[1].get("salary"))
#打印表中所有人的薪资
for i in range(len(tb)):
print(tb[i].get("salary"))
#打印表中所有数据
for i in range(len(tb)):
print(tb[i].get("name"),tb[i].get("age"),tb[i].get("salary"),tb[i].get("city"))
14、集合
add()增加? ? ?不可重复
a = {3,4,7}
a.add(9)
set() ?将列表元组等可迭代对象转成集合,如果原来数据存在重复数据,则只保留一个
a = {'a','b','c','b'}
b = set(a)
b = {'a','b','c'}
remove() ?删除指定元素,clear()清空整个集合
a = {10,20,30,40,50}
a.remove(20)
a = {10,30,40,50}
集合相关操作
a={1,3,'s'} b={'he','s','gt'} a|b ? ? #并集 {1,3,'s','he','gt'} a&b ? #交集 {'s'} a-b ? ?#差集 {1,3} a.union(b) ? #并集 a.intersection(b) ? ?#交集 a.difference(b) ? ? ? #差集
15、其他知识点
strip() ?去除字符串首尾的指定信息
“? ?sfhjdf ”. strip()
输出 ? ?"sfhjdf"
lstrip() ?去除字符串左边的信息 rstrip() 去除字符串右边的信息
a=“YUJIAQI love to play program very much” a.capitalize() 产生新的字符串,首字母大写 a.title() 产生新的字符串 每个单词的首字母大写 a.upper() 所有字符全部转成大写 a.lower() ?所有字符转成小写 a.swapcase() 所有字母大小写转换
isalnuml() 是否为字母或者数字 isalpha() 检查字符串是否只由字母(或者汉字) isdigital() 检查字符串是否由数字组成 isspace() 检查是否为空白符 isupper() 是否为大写字母 islower() ?是否为小写字母
|