同一运算符:
同一运算符用于比较两个对象的存储单元,实际比较的是对象的地址
is 与==的区别:
is判断的是两个变量引用对象是否为同一个,即比较对象的地址;
==用于判断引用对象的阿值是否相等
整数缓存的问题:
python会将[-5,256]范围内的整数缓存起来,则在这个范围内数,a = 5 ,b = 5. a is b 为真,默认这两个数的地址相同。而在pycharm里面的范围是[-5,任意正整数]
同一运算符:
同一运算符用于比较两个对象的存储单元,实际比较的是对象的地址
is 与==的区别:
is判断的是两个变量引用对象是否为同一个,即比较对象的地址;
==用于判断引用对象的阿值是否相等
整数缓存的问题:
python会将[-5,256]范围内的整数缓存起来,则在这个范围内数,a = 5 ,b = 5. a is b 为真,默认这两个数的地址相同。而在pycharm里面的范围是[-5,任意正整数]
布尔值:
True =1
False = 0
比较运算符:
1.等于 ==
2.不等于!=
3.大于 >
4.小于 <
5.大于等于 >=
6.小于等于 <=
逻辑运算符:
or: x or y,x为ture,则不计算y,发生短路
and: x and y,x为真,则返回y的值;若x为false,不计算y,直接返回x的值
not: not x,取非
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)
时间的表示:
在计算机中时间的表示是从“1970年1月1日 00:00:00”开始,以毫秒进行计算的。1970年这个 时刻称为“unix时间点”
python可以通过time.time()获得当前时刻,返回值以秒为单位;
程序基本结构:
浮点数:称为float,浮点数用科学计数法表示,比如:3.14,可以表示为314E-2或者314e-2。这些数字在内存中也是按照科学计数法存储;float(3)可以把整数型转换为浮点型;float(“3.14”}可以把字符串转化为小数;
整数和浮点数混合运算时,表达式结果自动转型为浮点数;
round()可以返回四舍五入的值。注:不改变原有的值,产生的是新的值;
增强型赋值运算符:
a = a + 1 等价于 a += 1
注:+和=之间不需要加空格
函数操作不可变全局变量,传递全局变量对象地址给栈帧的局部变量,之后改变局部变量会创建新的对象,局部变量对应对象地址变化
程序基本格式:
1、恰当空格,缩进
2、大小写
3、注释
行注释#
段注释'''
import turtle
turtle.width(10)
turtle.color("blue")
turtle.circle(50)
turtle.color("black")
turtle.penup()
turtle.goto(120,0)
turtle.pendown()
turtle.circle(50)
turtle.penup()
turtle.goto(240,0)
turtle.pendown()
turtle.color("red")
turtle.circle(50)
turtle.color("yellow")
turtle.penup()
turtle.goto(60,-50)
turtle.pendown()
turtle.circle(50)
turtle.color("green")
turtle.penup()
turtle.goto(180,-50)
turtle.pendown()
turtle.circle(50)
枚举法
for a in range(0,1001):
循环优化 time.time()
减少最内层循环的计算,尽量往外层放
连接字符串使用str.join(""),不生成新字符串
列表删减放在尾部,不用大量copy数据
1.比较运算符可以连用
2.位操作
左移1位相当于乘2,左移两位相当于乘4
右移1位相当于除2
优先级
1.乘除优先于加减
2.位运算和算术>比较>赋值>逻辑
str.format()
{:*>8}
find() :第一次出现指定字符串的位置
rfind():最后一次出现指定字符串的位置
count():制定字符串出现了几次
isalnum():所有字符全是字母或数字
strip()去除首尾信息
Istrip():去除左边
rstrip():去除右边
a.capitalize() 首字母大写
a.title() 每个单词首字母大写
a.upper() 所有字符大写
a.lower() 所有字符小写
a.swapcase()所有字母大小写转换
center():从两边补齐
ljust():从右边补齐
对于符合标识符规则的字符串,启动字符串驻留机制(仅包含下划线、字母、数字)
split()可
slice()截取字符串
[start:end:step]
str()转字符串
正向搜索[0,len(str)-1]
反向搜索[-1,-len(str)]
replace()替换
a.replace('c','高‘)
返回新字符串
转义字符
字符串拼接
都是字符串拼接
都是数字相加
两边类型不同报错
不换行打印
end="任意字符串“
从控制台读取字符串
input()
python的字符串是不可变的