字典 循环
跳出
continue 跳过本次循环
break跳出循环
else正常循环下面的else语句执行,说明循环正常结束、
集合
for i in []:按单个元素
for c in 'letter':按单个字符循环
for i in range(1,10)
for i in range(10)
for i in range(1,10,1)
range()循环不包含结束值
help()查看方法
dir()查看内部模块
数组
arrayy = [] 定义模块
while : +continue的表示能力强于for in range
for in range按照步长改变值,而不能根据条件改变值
pass用作条件的占位符
字符串
1.数组变长
2.链表增加删除麻烦
3.不可变类型(字符串)
""" """在开头,文档(必写:作者 时间 功能)
注释:
file+setting+file and code templates+python script
变量用$表示 例如:
date:$date $time
在跨行字符串赋值 ''' '''
在文中多行注释
!r 字符串原样输出
字符串切片
几乎所有的划分位置范围的函数,都不包括最后一个
s1='hello world'
s2=s1[0:5]
s3=s1[5] 从0位置开始
s4=s1[1:]直到末尾
s5=s1[:]从头到末尾
s6=s1
s7=s1[::n]步长为n的取值字符串(n>0)
s7=s1[::n]步长为n(从后往前切)的取值字符串(n<0)
只要带切片顺序运算结果可以保持小位置在前,大位置在后就正确
于是
s6 is s1 和s6==s1结果为true
反转:[::-1]
通过print(id())显示两个变量指向同一个位置
字符串类型判断
if type(目的)==type(' '):
pass
.isdigit()判断是否为数字
内置函数
- 下划线的变量为内置变量
- .count()方法
- .find()方法,返回值匹配的字符串位置
- .replace()方法替换,可以与.count()方法聚合
- split()切片
- ' '.join(' '.split())[::-1]
-
乱码怎么办?
-
列表list[]
arr2=[i for i in range(1,8)] arr2=[i for i in set] for i in range(len(arrayname)) reverse()
相关函数
image.png
列表名相乘为循环n次
a:=120返回值后可直接在print里输出
del arraylistname[]回收内存空间
arraylistname.clear()
复制 a=b[:] 不指向同一块内存空间
attention:数组可以遍历,字符串不可以遍历
拷贝
-
二维数组的拷贝
不对齐二维数组
image.png
二维数组按行可以拷贝行,列依然是引用,called(浅拷贝)
深拷贝
import copy
a=copy.deepcopy()
序列的压进弹出
append()进栈
pop()出栈
pop(n)从第n个位置出来
高并发——>分布式
基本数据类型不需要导入,deque和stack会导入
from collections import deque
a=deque()
a.append(x)
a.appendleft(y)
vc=[[1,2,3],[4,5,6],[7,8,9]]
vct=[[item[x] for item in vc] for x in range(3)]
vcaddgeneral=[x for item in vc for x in item ]
列表 dimension维度
字典 代码作业代码
# coding=utf-8
'''
作业1
print(int("1.4")) 报错
print(int(1.4)) 输出1
'''
'''
作业2
单引号,双引号都可以表示字符串和表示转义
三引号可以换行表示字符串
'''
p=3.14
# first way
# print(round(p,2))
#second way
print('%.2f'%(p))
# coding=utf-8
a='1.2.3.4.5'
b='|'.join(a.split('.'))[::-1]#start:end:step
print(b)
# a=[[1,2],[3,4],[5,6]]
# b=[x for item in a for x in item]
# print(b)
from collections import Counter,namedtuple
s='hello world'
cnt=Counter(s)
ss=dict(cnt)
ad=sorted(ss.items(),key=lambda x:x[1],reverse=True)
print(list(ad.key())[0])
x="abc"
y="def"
z=["d","e","f"]
print(x.join(y))
print(x.join(z))
a=[1,5,7,9]
b=[2,2,6,8]
print(sorted(a+b))
a=[2,3,5,4,9,6]
i=len(a)-1
while i>0:
for j in range(0,i):
if a[j]>a[j+1]:
c=a[j]
a[j]=a[j+1]
a[j+1]=c
i-=1
print(a)
what teacher say:
工程代码 可读性比程序简洁性更简单
预习
正则表达式
网友评论