python学习笔记(持续更新中

Myarr = [1,2,3,4,5,6,7,8,9]
#这里的-2下标就是取出Myarr中倒数第二个元素即8, 并把8赋给t
t = Myarr[-2]

for循环

以我自己浅显的想法来看,我觉得py里面的for循环方式是很丰富和好玩的

#意思是i作为迭代器,就是用来干活循环多次去获取range(21)的,
#range(21)会生成一个从0到20的整数序列,总共是21个数字
for i  in range(21):

还有就是循环列表

fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)

可以在迭代器那里进行一些操作

t = [1, 2, 3]
  t^2  for t in fruits:
    print(t^2)

map和list函数的应用

这两个是python的内置函数,在对数据进行处理的时候,经常被用到,出场率非常高

map(函数,待处理数据)这个函数处理后,把待处理数据转换成想要的数据形式,返回的是一个迭代器对象,用list函数可以把这个迭代器所指向的东西以列表的形式展现出来

# 将列表中的每个元素转换为字符串
numbers = [1, 2, 3, 4, 5]
result = list(map(str, numbers))
# 输出结果为 ['1', '2', '3', '4', '5']

# 计算列表中每个元素的平方
numbers = [1, 2, 3, 4, 5]
result = list(map(lambda x: x**2, numbers))
# 输出结果为 [1, 4, 9, 16, 25]

# 将两个列表对应位置的元素相加
list1 = [1, 2, 3]
list2 = [4, 5, 6]
result = list(map(lambda x, y: x + y, list1, list2))
# 输出结果为 [5, 7, 9]

迭代器

什么是迭代器呢?我浅薄的认为,这是一个可以逐个访问元素,具有自动跳转到下一个要指向对象的东西,非常好用

python里面的数组切片操作

切片操作的语法为[start:stop:step],其中:

start:起始位置(包含该位置的元素)stop:结束位置(不包含该位置的元素)step:步长(默认为1);start和stop可以省略,默认是整个数组,step省略默认为1

下面是几个常见的例子

1.获取列表中的部分元素

my_list = [1, 2, 3, 4, 5]
print(my_list[1:4])  # 输出:[2, 3, 4]

2.使用负数索引来从列表末尾开始切片

print(my_list[-3:])  # 输出:[3, 4, 5]

3.指定步长来获取间隔元素

print(my_list[::2])  # 输出:[1, 3, 5]

4.切片操作也适用于字符串

my_string = "Hello, World!"
print(my_string[7:])  # 输出:World!

切片操作的好处不言而喻,通过灵活运用切片操作,可以方便地从序列中获取需要的子序列,提高代码的简洁性和可读性

turtle库

这里单独的想说一下turtle库,这是python语言内嵌的一个函数,用来画图使用,很好玩

我一向认为例子才是学习新知识的最好方法这里举出一个例子

首先要先import turtle来引入turtle函数

import turtle
import random#这个引用是后面需要

既然画图,当然要明确在哪里画

# 创建画布
screen = turtle.Screen()
screen.bgcolor("black")

画布是准备好了,现在就准备画笔了,turtle如其名,创建海龟来做画笔

# 创建海龟
t = turtle.Turtle()
t.speed(0)
t.width(2)

一幅好看的美术作品,少不了丰富的色彩(当然你要是抬杠说素描,那我没话说),turtle里面默认是使用红蓝等固定颜色名称来表示颜色,色彩不够丰富,但是可以通过设置颜色模式为RGB(红绿蓝色彩模式),可以使用RGB值来表示颜色,即以红绿蓝为三原色混合生成任意颜色

# 设置颜色模式为RGB
turtle.colormode(255)

那海龟该怎么进行移动以及该怎么改变海龟的痕迹粗细和速度呢?

# 定义海龟移动函数  全都是以当前海龟朝向为基准
def move_forward():
    t.forward(10) #前进  直线

def move_backward():
    t.backward(10) #后退

def turn_left():
    t.left(10)  #向左

def turn_right():
    t.right(10) #向右

def change_color():
#随机颜色
    r = random.randint(0, 255)
    g = random.randint(0, 255)
    b = random.randint(0, 255)
    t.pencolor(r, g, b)

def increase_width():
    width = t.width() #痕迹变粗
    t.width(width + 1)

def decrease_width():
    width = t.width() #痕迹变细
    if width > 1:
        t.width(width - 1)
def change_speed():
    speed = t.speed() #取值0(最快)到10(最慢)
def ciecle_draw():
    circle(radius,extent=None,steps=None)
    #radius圆的半径,正值表示圆心在海龟左侧,为负值表示圆心在海龟右侧
    #extent:可选参数,表示绘制的角度范围,默认为360度(完整圆形)
    #steps:可选参数,表示绘制图形时的线段数,用于控制圆形的平滑度,默认为None.
def dot_draw():
    dot(size=None,color=None)
    #size:可选参数,表示点的大小    默认为1。
    #color:可选参数,表示点的颜色,默认为当前画笔颜色

设置一下快捷调整小乌龟姿态的方法

# 绑定按键事件  按下按键可以实现相对应的效果
screen.listen()
screen.onkey(move_forward, "w")
screen.onkey(move_backward, "s")
screen.onkey(turn_left, "a")
screen.onkey(turn_right, "d")
screen.onkey(change_color, "c")
screen.onkey(increase_width, "Up")
screen.onkey(decrease_width, "Down")

来画个彩色螺旋线吧

# 绘制彩色螺旋线
for i in range(360):
    r = random.randint(0, 255)
    g = random.randint(0, 255)
    b = random.randint(0, 255)
    t.pencolor(r, g, b)
    t.forward(i * 2)
    t.left(89)

海龟一直在屏幕里面也影响视线,可以隐藏掉

# 隐藏海龟
t.hideturtle()

结束绘制,关掉画布

# 点击关闭窗口
screen.exitonclick()

效果如下

屏幕录制 2024-03-29 213649

另外还有一些

改变海龟的位置

#海龟的初始位置即画布中心为坐标原点(0,0),形成四象限的二维坐标
import turtle as tt
tt.goto(100,100)移动到(100,100)
#其中特殊点tt.goto(0,0)等效于tt.home()

改变海龟的朝向

turtle.seth(angle)
#改变海龟游走的方向,只改变方向,不行进 顺时针为正角度

python里面一些很有用的流程控制结构

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Python工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Python开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

img

img

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

mg_convert/6c361282296f86381401c05e862fe4e9.png)

img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以扫码获取!!!(备注:Python)

  • 12
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值