#### 轨迹
## turtle.tracer(False)关闭轨迹与turtle.update()更新画面配合使用
## turtle.speed(0到10) 0画的速度最快,可以看到轨迹
#### 知识点
# turtle.home()回到初始位置原点和初始方向,对速度设置没有影响
# t.color('white', 'white') 设置画笔的前景色和背景色=设置画笔的颜色和填充颜色
# 注意:以原点为起点进行坐标画圆等动作,都以初始原点为坐标系
# t.circle(50,steps=3) 内置三角形:只显示三角形,不显示圆
## 注意:返回值 = 能输出的东西 ≠ 能输出屏幕上看到
返回值 = 但是你可以自己算出这个结果
eg:len("aaa") 返回值:3
####1. 数字、字符串、列表、元组、字典、集合
## 数字:int 浮点数
注意:计算小数时 ***运算结果包含小数位可能是不确定的***
eg:0.2 + 0.1 = 0.30000000000000004
## 字符串:字符的序列
## 连接符
字符串连接符 "+"
任意连接符 ","
####2. 内置函数:可以直接使用
## print() 类似所有:数字/算式/不等式/字符串/变量
## input() 用户在键盘上输入,由此获取用户的输入信息
注意:***返回值为字符串类型***
## len(字符串/字符串变量) 返回字符的个数
#### 3. 方法:
## 字符串方法:使用:变量.方法()
# title() 首字母大写
eg:myName="johnson" myName.title()
# upper() 大写
eg:myName="johnson" myName.upper()
# lower() 小写
eg:myName="johnson" myName.lower()
## 数据类型转换方法:
# str() 非字符串 → 字符串
eg: str(8) → ‘8’
# float() 整数/数字类型的字符串 → 浮点数
eg: float(1) → 1.0
float('13') → 13.0
# int() 非整数数字 → 整数
#### 列表(=数组):存储相同数据类型的变量
## 表示列表:[] 用逗号分隔列表中元素
eg:friends=["lili","linda","tom"]
注意:print(friends) 返回值为["lili","linda","tom"],不是"lili","linda","tom"
## 访问列表元素 = 访问数组元素
注意:索引为-1,返回最后一个列表元素
索引为-2,返回倒数第二个列表元素
## 添加列表元素
# append(值) 末尾添加列表元素 -- 注意:不可以一次添加多个元素
# insert(索引,值) 添加元素在索引位置,影响其他列表元素
eg:friends.insert(1,"cherry") -- 索引1位置插入"cherry" 影响其他列表元素
print(fruits) 返回值["lili","cherry","linda","tom"]
## 删除列表元素
# 知道索引用del fruits[2]
# 只知道值用remove() eg:fruits.remove("orange")
# pop(索引值/默认最后一个) 删除列表任意元素,被删除的列表元素依旧要被用
eg: poppedFriend=friends.pop(2) print(poppedFriend)
## 查找单个元素索引
index() 查找列表中单个元素的索引
eg:friends.index("lili")
## 排序
# 列表元素按字母排序 sort()
eg: fruits.sort() 按字母顺序排序
eg: fruits.sort(reverse=True) 按字母倒序排序
## 反转
# 反转列表元素 reverse()
eg: fruits.reverse()
## 列表转换成字符串
# join() 把整个列表元素连接成一个新的字符串
eg: join(fruits)
## 字符串转换成列表
# split() 用分隔符把字符串切片成列表
eg: strName="朱小宇,李小轩, 张小睿,李小一"
strname.split(",") -- 其中","为分隔符
#### 元组
## 元组与列表的差别
# 元组( , , ) 列表[ , ,] 都是存储相同数据类型
# 元组: ***不可以修改元组元素,但可以修改元组变量*** 列表: 可以修改元素
eg: week=("Monday","Tuesday","Wednesday")
week[1]="Tue" 错误×× 因为不可以修改元组元素
week=("Mon","Tue","Wed") 但可以修改元组变量
## 元组与列表的转换
# 元组转换为列表list() eg: week=list(week)
# 将列表转换为元组tuple() eg: week=tuple(week)
#### 字典
## 字典: 存储不同数据类型 键值对形式
eg: person={"name":"Johnson","age":9,"gender":"male","height":"140cm"}
字典中的元素是没有顺序的。
键唯一。若有重复的键,后来的键值对会覆盖前面的键值对
## 添加键值对
person["fish"] 直接赋值
## 删除键值对
del person["age"]
## 清空所有键值对
person.clear()
## 返回指定键的值
person.get("name")
### 转换
## 字典 → 列表list() + keys()、values()和 items()
# list(person.keys()) 字典的键列表
# list(person.values()) 字典的值列表
# list(person.items()) 字典的键值对列表
## 嵌套列表 → 字典 dict()
dict(person)
## 排序:
# 字典本身无法排序,但可以转换成列表进行排序
eg: List = list(person.items())
List.sort()
# lambda作为字典的键进行排序
scoreList.sort(key=lambda items: items[1])
#### 元组、列表、字典
总结:只有元组不可以修改元素,列表和字典都可以
#### 布尔运算符
## "=="与"="的区别
"=="表示两边的值是否相等,且数据类型也要相同
"="表示把右边的值保存到左边的变量中,其中左边必须为变量,右面为值
注意:整数和浮点数只要值相同,就是相同的
print(4==4.0) 返回值为true
## and与 or或 not非
#### break与continue的区别
## break 直接退出整个循环
## continue 退出本轮循环,由条件判断是否要参加下次循环
#### for循环与while循环
## for循环用于循环代码一定次数,而while循环是只要满足某个条件就会不断重复。
for 变量/循环次数 in 范围:
语句
eg: for animal in animals:
语句
#### 条件
## ***条件的返回值为布尔值***
## 条件语句1
if 条件:
语句
## 条件语句2
if 条件:
语句
else:
语句
## 条件语句3
if 条件:
语句
elif 条件:
语句
elif 条件:
语句
else:
语句
#### 文件
txtFile1=open("D:\Python Programs\古诗1.txt","r") #打开文件,只读
while True:
line=txtFile1.readline() #读取一行文本
# lines=txtFile1.readlines() #读取全部文本
if not line:
break
else:
print(line)
txtFile1.close() #关闭文件
txtFile2=open("D:\Python Programs\古诗1.txt","w") #打开文件,覆盖写入
txtFile2.write("春晓\n") 写入
txtFile2.close() #关闭文件