int整数 float浮点数
0b二进制
0o八进制
0x十六进制
>>> a = 3/2
>>> a
1.5
>>> 7//2
3
>>> 7%2
1
>>> 2*3
6
>>> 2**3
8
>>> 2**4
16
>>> 2**5
32
>>> 2**10
1024
>>> divmond(7,2)
Traceback (most recent call last):
File "" , line 1, in <module>
divmond(7,2)
NameError: name 'divmond' is not defined
>>> divmod(7,2)
(3, 1)
>>>
>>> 0b101
5
>>> 0b111
7
>>> 0o4
4
>>> 0o9
SyntaxError: invalid token
>>> 0o11
9
>>> 0o56
46
>>> 0xaa
170
>>> 0x39
57
>>> #int()实现整数类型的转换
>>> 3+4.4
7.4
>>> int(4.7)
4
>>> int("12")
12
>>> #浮点数float
>>> a=3.14
>>> a
3.14
>>> float(3)
3.0
>>> 314e-2
3.14
>>> 315E-2
3.15
>>> int(3.94)
3
>>> round(3.94)
4
>>> #round四舍五入
>>> a = a + 1
>>> a
4.140000000000001
>>> a += 1
>>> a
5.140000000000001
>>> #+=中间不能有空格
>>> a *=2
>>> a
10.280000000000001
>>>
时间的表示
>>> #时间的表示
>>> #计算机表示的时间从1970年1月1日 00:00:00开始
>>> import time
>>> time.time()
1590807395.5320432
>>> #time.time()是获得当前时刻,返回的值以毫秒为单位,带微秒(1/1000毫秒)精度的浮点值。
>>> b = int(time.time())
>>> b
1590807618
>>> totalMinutes = b/60
>>> totalMinutes
26513460.3
>>> totalMinutes = b//60
>>> totalMinutes
26513460
>>> #分钟数://60
>>> #小时数:分钟数//60
>>> totalhours = totalMinutes//60
>>> totalhours
441891
>>> totaldays = totalhours//24
>>> totaldays
18412
>>> totalyears = totaldays//365
>>> totalyears
50
>>>
import turtle
import math
#定义多个点的坐标
x1,y1 = 100,100
x2,y2 = 100,-100
x3,y3 = -100,100
x4,y4 = -100,-100
#绘制折线
turtle.penup()
turtle.goto(x1,y1)
turtle.pendown()
turtle.goto(x2,y2)
turtle.goto(x3,y3)
turtle.goto(x4,y4)
#计算起始点和站点的距离
distance = math.sqrt((x1-x4)**2+(y1-y4)**2)
turtle.write(distance)
>>> a = True
>>> b = 3
>>> a
True
>>> a + b
4
>>> a = 10
>>> b = 20
>>> a<b
True
>>> a!=b
True
>>> a == b
False
>>> #==判断两个数是否相等
>>> #逻辑运算符 or and not
>>> a=3
>>> b=5
>>> a or b
3
>>> a =5
>>> b = 3
>>> a or b
5
>>> a and b
3
>>> not a
False
>>> not b
False
>>>
>>> a = 1000
>>> b = 1000
>>> a == b
True
>>> a is b
False
>>> #is判断两个标识是不是引用同一个对象
>>> #==判断引用对象的值是否相等
>>> c = 10
>>> d == 10
Traceback (most recent call last):
File "" , line 1, in <module>
d == 10
NameError: name 'd' is not defined
>>> d = 10
>>> c is d
True
>>> #python 会对比较小的证书对象进行缓存[-5,256],此时c is d
>>> #若在保存文件中执行,范围为[-5,任意整数]
字符串
>>> #python的字符串不可改变,但可以复制一部分到新的字符串,达到看起来修改的效果
>>> #python不支持单字符
>>> ord('c')
99
>>> ord('张')
24352
>>> ord('刘')
21016
>>> chr(8)
'\x08'
>>> chr(20000)
'丠'
>>> chr(24355)
'弣'
>>> a = "abc"
>>> a
'abc'
>>> print(a)
abc
>>> a = 'abc'
>>> a
'abc'
>>> print(a)
abc
>>> #连续三个单引号或三个双引号,可以帮助我们创建多行字符串。
>>> a = '''name="张"
school = "cufe" age = 25'''
>>> a
'name="张"\nschool = "cufe" age = 25'
>>> c = ''
>>> len(c)
0
>>> c = "ab张"
>>> len(c)
3
换行与字符
>>> a
'i\nlove\nu'
>>> print(a)
i
love
u
>>> b = 'i\'m a teacher'
>>> b
"i'm a teacher"
>>> #这里i'm的单引号不想被识别为‘’,加入\
>>> print(aaaaaaa\)
SyntaxError: unexpected character after line continuation character
>>> print(aaaaaaa\
bbbbbbb)
SyntaxError: invalid syntax
>>> print('aaaaaaa\
bbbbbbb')
SyntaxError: unexpected indent
>>> print('aaaaaaa\
bbbbbbb')
aaaaaaa bbbbbbb
>>> 'aa'+'bb'
'aabb'
>>> 3+"3"
Traceback (most recent call last):
File "" , line 1, in <module>
3+"3"
TypeError: unsupported operand type(s) for +: 'int' and 'str'
>>> b = 'st''zs'
>>> b
'stzs'
>>> #直接放一起拼接
>>> a = 'st'*3
>>> a
'ststst'
#打印时不换行处理,加end参数
print("sxt",end='')
print("sxt",end='¥¥')
print("sss")
sxtsxt¥¥sss
>>> name = input("请输入名字:")
请输入名字:张女士
>>> name
'张女士'
>>> #input控制台键盘
>>> #str()实现数字转型字符串
>>> int("234")
234
>>> float("3.14")
3.14
>>> str(5.20)
'5.2'
>>> str(314)
'314'
>>> str(3.14e2)
'314.0'
>>> str(True)
'True'
>>> #使用[]提取字符
>>> a = "abcdefghijklmnopqrstuvwxyz"
>>> a
'abcdefghijklmnopqrstuvwxyz'
>>> a[0]
'a'
>>> a[3]
'd'
>>> a[26-1]
'z'
>>> a[-1]
'z'
>>> #replace()实现字符串替换
>>> a[0]="z"
Traceback (most recent call last):
File "" , line 1, in <module>
a[0]="z"
TypeError: 'str' object does not support item assignment
>>> #字符串不能改变
>>> a.replace('c',"z")
'abzdefghijklmnopqrstuvwxyz'
>>> a
'abcdefghijklmnopqrstuvwxyz'
>>> #原字符串没有变
>>> a = a.replace('c',"z")
>>> a
'abzdefghijklmnopqrstuvwxyz'
>>> #此时变了
字符串切片操作
>>> #切片slice操作:[起始偏移量:终止偏移量:步长step]
>>> #[:]提取整个字符串
>>> #[start:]从start开始到结尾
>>> #[:end]
>>> #[start:end]从start到end-1
>>> #[start:end:step]从start提取到end-1
>>> #包头不包尾!!!!!!!!
>>> a[1:5]
'bzde'
>>> a[1:5:2]
'bd'
>>> a[:]
'abzdefghijklmnopqrstuvwxyz'
>>> a[2:]
'zdefghijklmnopqrstuvwxyz'
>>> a[:5]
'abzde'
>>> #[]里为负数的情况
>>> a[-3:]
'xyz'
>>> a[:-5]
'abzdefghijklmnopqrstu'
>>> a[::-1]
'zyxwvutsrqponmlkjihgfedzba'
>>> a[2:400]
'zdefghijklmnopqrstuvwxyz'
>>> "to be or not to be"[::-1]
'eb ot ton ro eb ot'
>>> "sxtsxtsxtsxt"[::3]
'ssss'
常用查找方法
>>> a = "我是一个宝宝,也是一个仙女,反正我就是这个世界上最可爱的人"
>>> len(a)
29
>>> a.startswith ("我是")
True
>>> a.endswith("的人")
True
>>> a.find("我")
0
>>> a.rfind("我")
16
>>> a.count("我")
2
>>> a.isalnum()
False
去除收尾信息
>>> "*s*x*t*"
'*s*x*t*'
>>> "*s*x*t*".strip("*")
's*x*t'
>>> "*s*x*t*".strip()
'*s*x*t*'
>>> "s*x*t*".strip("*")
's*x*t'
大小写转换
>>> a = "wo shi yi ge xian nv"
>>> a.capitalize()
'Wo shi yi ge xian nv'
>>> a.title()
'Wo Shi Yi Ge Xian Nv'
>>> a.upper()
'WO SHI YI GE XIAN NV'
>>> a.lower()
'wo shi yi ge xian nv'
>>> a.swapcase()
'WO SHI YI GE XIAN NV'
格式排版
>>> a ="sxt"
>>> a.center(10,"*")
'***sxt****'
>>> a.center(10)
' sxt '
>>> a.ljust(10,"#")
'sxt#######'
format()基本用法
>>> a = "名字是:{0},年龄是{1}"
>>> a.format("张女士",18)
'名字是:张女士,年龄是18'
>>> b="名字是{name},年龄是{age}"
>>> b.format(age=19,name="张女士")
'名字是张女士,年龄是19'
>>>
对齐与填充
>>> b="名字是{name},年龄是{age:*^8}"
>>> b.format(age=19,name="张女士")
'名字是张女士,年龄是***19***'
>>> #<左对齐,>右对齐
>>> "{:0>6d}".format(12)
'000012'
>>> #用0填充,右对齐,此方法可用来填充股票代码