发现有一个会Python的男友魅力值杠杠的!!!

Python能做什么?

可以做日常任务,比如自动备份你的MP3,可以做网站,很多著名的网站像知乎、YouTube就是Python写的, 可以做网络游戏的后台,很多在线游戏的后台都是Python开发的。

上面说的这些本人并没有实现过,哈哈哈哈。 但是我知道Python可以做一些有趣的东西,比如仿制抖音表白小软件,用的的开发工具为pycham,pycham也是广泛用于做Python开发的工具。运用的turtle库,当然了如果是安装了anaconda3这个库更好,这里面会有我们做Python程序设计时用到的大部分的库,turtle它是python中一个绘制图像的函数库,可以用它来绘制很多的东西,比如简单的小黄人、玫瑰花、爱心树等,这个库也可以说是一只马良的神笔的吧。

1.告白神器

1、创建一个游戏屏幕 2、加载title 3、加载button, 4、当鼠标移动到 ‘算了吧’ 上面的时候 重加加载桌面并随机生成一个 ‘算了吧’ 坐标; 5、当鼠标移动到 ‘好呀’上面时 显示不同的title 以下就是Python脚本:

import pygame
import random# 设置游戏屏幕大小 这是一个常量
WIDTH, HEIGHT = 640, 480screen = pygame.display.set_mode((WIDTH, HEIGHT), 0, 32)
pygame.display.set_caption('FROM一个喜欢你很久的小哥哥')# 标题
def title(text, screen, scale, color=(255, 0, 0)):font = pygame.font.SysFont('SimHei', WIDTH//(len(text)*2))textRender = font.render(text, True, color)# 获取此图片的矩形框# textRect = textRender.get_rect()# textRect.midtop = (WIDTH/scale[0], HEIGHT/scale[1])# screen.blit(textRender, textRect)# 初始化文字的坐标screen.blit(textRender, (WIDTH/scale[0], HEIGHT/scale[1]))# 按钮
def button(text, x, y, w, h, color, screen):pygame.draw.rect(screen, color, (x, y, w, h))font = pygame.font.SysFont('SimHei', 20)textRender = font.render(text, True, (0, 0, 0))textRect = textRender.get_rect()textRect.center = ((x+w/2), (y+h/2))screen.blit(textRender, textRect)# 生成随机的位置坐标
def get_random_pos():x, y = random.randint(20, 620), random.randint(20, 460)return x, y# 点击喜欢按钮后显示的页面
def show_like_interface(text, screen, color=(255, 0, 0)):screen.fill((255, 255, 255))font = pygame.font.SysFont('SimHei', WIDTH//(len(text)))textRender = font.render(text, True, color)textRect = textRender.get_rect()textRect.midtop = (WIDTH/2, HEIGHT/2)screen.blit(textRender, textRect)pygame.display.update()while True:for event in pygame.event.get():if event.type == pygame.QUIT:pygame.quit()def main():pygame.init()clock = pygame.time.Clock()unlike_pos_x = 330unlike_pos_y = 250unlike_pos_width = 80unlike_pos_height = 40unlike_color = (0, 191, 255)like_pos_x = 180like_pos_y = 250like_pos_width = 80like_pos_height = 40like_color = (0, 191, 255)running = Truewhile running:# 填充窗口screen.fill((255, 255, 255))img = pygame.image.load('d:/love2.png')imgRect = img.get_rect()imgRect.midtop = int(WIDTH / 1.3), HEIGHT // 7screen.blit(img, imgRect)# 获取坐标pos = pygame.mouse.get_pos()if pos[0] < unlike_pos_x + unlike_pos_width + 5 and pos[0] > unlike_pos_x - 5 and pos[1] < unlike_pos_y + unlike_pos_height + 5 and pos[1] > unlike_pos_y - 5:while True:unlike_pos_x, unlike_pos_y = get_random_pos()if pos[0] < unlike_pos_x + unlike_pos_width + 5 and pos[0] > unlike_pos_x - 5 and \pos[1] < unlike_pos_y + unlike_pos_height + 5 and pos[1] > unlike_pos_y - 5:continuebreaktitle('小姐姐,我观察你很久了', screen, scale=[5, 8])title('做我女朋友好不好呀', screen, scale=[5, 4])button('好呀', like_pos_x, like_pos_y, like_pos_width, like_pos_height, like_color, screen)button('算了吧', unlike_pos_x, unlike_pos_y, unlike_pos_width, unlike_pos_height, unlike_color, screen)for event in pygame.event.get():if event.type == pygame.QUIT:pygame.quit()if pos[0] < like_pos_x + like_pos_width + 5 and pos[0] > like_pos_x - 5 and pos[1] < like_pos_y + like_pos_height + 5 and pos[1] > like_pos_y - 5:show_like_interface('我就知道小姐姐你也喜欢我~', screen, color=(255, 0, 0))pygame.display.flip()pygame.display.update()clock.tick(60)main()``

2、爱情之树

在这里插入图片描述

import turtle
import randomdef love(x,y):#在(x,y)处画爱心lalalalv=turtle.Turtle()lv.hideturtle()lv.up()lv.goto(x,y)#定位到(x,y)def curvemove():#画圆弧for i in range(20):lv.right(10)lv.forward(2)lv.color('red','pink')lv.speed(100)lv.pensize(1)#开始画爱心lalalalv.down()lv.begin_fill()lv.left(140)lv.forward(22)curvemove()lv.left(120)curvemove()lv.forward(22)lv.write("杨幂",font=("Arial",12,"normal"),align="center")#写上表白的人的名字lv.left(140)#画完复位lv.end_fill()def tree(branchLen,t):if branchLen > 5:#剩余树枝太少要结束递归if branchLen<20:t.color("green")t.pensize(random.uniform((branchLen + 5) / 4 - 2, (branchLen + 6) / 4 + 5))t.down()t.forward(branchLen)love(t.xcor(),t.ycor())#传输现在turtle的坐标t.up()t.backward(branchLen)t.color("brown")returnt.pensize(random.uniform((branchLen+5)/4-2,(branchLen+6)/4+5))t.down()t.forward(branchLen)# 以下递归ang=random.uniform(15,45)t.right(ang)tree(branchLen-random.uniform(12,16),t)#随机决定减小长度t.left(2*ang)tree(branchLen-random.uniform(12,16),t)#随机决定减小长度t.right(ang)t.up()t.backward(branchLen)myWin = turtle.Screen()t = turtle.Turtle()t.hideturtle()t.speed(1000)t.left(90)t.up()t.backward(200)t.down()t.color("brown")t.pensize(32)t.forward(60)tree(100,t)myWin.exitonclick()

3.一场烟花表演

100余行Python代码和程序库Tkinter,最后我们就能达到下面这个效果: 在这里插入图片描述

import tkinter as tk
from PIL import Image, ImageTk
from time import time, sleep
from random import choice, uniform, randint
from math import sin, cos, radians
# 模拟重力
GRAVITY = 0.05
# 颜色选项(随机或者按顺序)
colors = ['red', 'blue', 'yellow', 'white', 'green', 'orange', 'purple', 'seagreen', 'indigo', 'cornflowerblue']
'''
particles 类
粒子在空中随机生成随机,变成一个圈、下坠、消失
属性:- id: 粒子的id- x, y: 粒子的坐标- vx, vy: 在坐标的变化速度- total: 总数- age: 粒子存在的时长- color: 颜色- cv: 画布- lifespan: 最高存在时长
'''
class Particle:def __init__(self, cv, idx, total, explosion_speed, x=0., y=0., vx=0., vy=0., size=2., color='red', lifespan=2,**kwargs):self.id = idxself.x = xself.y = yself.initial_speed = explosion_speedself.vx = vxself.vy = vyself.total = totalself.age = 0self.color = colorself.cv = cvself.cid = self.cv.create_oval(x - size, y - size, x + size,y + size, fill=self.color)self.lifespan = lifespandef update(self, dt):self.age += dt# 粒子范围扩大if self.alive() and self.expand():move_x = cos(radians(self.id * 360 / self.total)) * self.initial_speedmove_y = sin(radians(self.id * 360 / self.total)) * self.initial_speedself.cv.move(self.cid, move_x, move_y)self.vx = move_x / (float(dt) * 1000)# 以自由落体坠落elif self.alive():move_x = cos(radians(self.id * 360 / self.total))# we technically don't need to update x, y because move will do the jobself.cv.move(self.cid, self.vx + move_x, self.vy + GRAVITY * dt)self.vy += GRAVITY * dt# 移除超过最高时长的粒子elif self.cid is not None:cv.delete(self.cid)self.cid = None# 扩大的时间def expand (self):return self.age <= 1.2# 粒子是否在最高存在时长内def alive(self):return self.age <= self.lifespan
'''
循环调用保持不停
'''
def simulate(cv):t = time()explode_points = []wait_time = randint(10, 100)numb_explode = randint(6, 10)# 创建一个所有粒子同时扩大的二维列表for point in range(numb_explode):objects = []x_cordi = randint(50, 550)y_cordi = randint(50, 150)speed = uniform(0.5, 1.5)size = uniform(0.5, 3)color = choice(colors)explosion_speed = uniform(0.2, 1)total_particles = randint(10, 50)for i in range(1, total_particles):r = Particle(cv, idx=i, total=total_particles, explosion_speed=explosion_speed, x=x_cordi, y=y_cordi,vx=speed, vy=speed, color=color, size=size, lifespan=uniform(0.6, 1.75))objects.append(r)explode_points.append(objects)total_time = .0# 1.8s内一直扩大while total_time < 1.8:sleep(0.01)tnew = time()t, dt = tnew, tnew - tfor point in explode_points:for item in point:item.update(dt)cv.update()total_time += dt# 循环调用root.after(wait_time, simulate, cv)
def close(*ignore):"""退出程序、关闭窗口"""global rootroot.quit()
if __name__ == '__main__':root = tk.Tk()cv = tk.Canvas(root, height=400, width=600)# 选一个好看的背景会让效果更惊艳!image = Image.open("./image.jpg")photo = ImageTk.PhotoImage(image)cv.create_image(0, 0, image=photo, anchor='nw')cv.pack()root.protocol("WM_DELETE_WINDOW", close)root.after(100, simulate, cv)root.mainloop()

这只是一个简单版本,等进一步熟悉Tkinter后,还可以添加更多颜色更漂亮的背景照片,让代码为你绽放更美的烟花!

将将将,到这里结束了,现在就可以动手准备给你们女朋友一个惊喜,展现你的Python男友魅力,我一直就觉得有个会Python的男朋友特别帅气,敲代码时特别有魅力。

如果你对Python感兴趣,想要学习python,这里给大家分享一份Python全套学习资料,都是我自己学习时整理的,希望可以帮到你,一起加油!

😝有需要的小伙伴,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
Python全套学习资料

在这里插入图片描述

1️⃣零基础入门

① 学习路线

对于从来没有接触过Python的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

② 路线对应学习视频

还有很多适合0基础入门的学习视频,有了这些视频,轻轻松松上手Python~
在这里插入图片描述

③练习题

每节视频课后,都有对应的练习题哦,可以检验学习成果哈哈!
在这里插入图片描述

2️⃣国内外Python书籍、文档

① 文档和书籍资料

在这里插入图片描述

3️⃣Python工具包+项目源码合集

①Python工具包

学习Python常用的开发软件都在这里了!每个都有详细的安装教程,保证你可以安装成功哦!
在这里插入图片描述

②Python实战案例

光学理论是没用的,要学会跟着一起敲代码,动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。100+实战案例源码等你来拿!
在这里插入图片描述

③Python小游戏源码

如果觉得上面的实战案例有点枯燥,可以试试自己用Python编写小游戏,让你的学习过程中增添一点趣味!
在这里插入图片描述

4️⃣Python面试题

我们学会了Python之后,有了技能就可以出去找工作啦!下面这些面试题是都来自阿里、腾讯、字节等一线互联网大厂,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

5️⃣Python兼职渠道

而且学会Python以后,还可以在各大兼职平台接单赚钱,各种兼职渠道+兼职注意事项+如何和客户沟通,我都整理成文档了。
在这里插入图片描述

上述所有资料 ⚡️ ,朋友们如果有需要的,可以扫描下方👇👇👇二维码免费领取🆓
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/168728.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第98步 深度学习图像目标检测:SSD建模

基于WIN10的64位系统演示 一、写在前面 本期开始&#xff0c;我们继续学习深度学习图像目标检测系列&#xff0c;SSD&#xff08;Single Shot MultiBox Detector&#xff09;模型。 二、SSD简介 SSD&#xff08;Single Shot MultiBox Detector&#xff09;是一种流行的目标检…

.netcore 获取appsettings

我的开发环境是abpvnext net6.0 。 因为业务需要&#xff0c;从原来老项目net4.5工程里复制了一个报表导出的业务类到net6项目里面&#xff0c;但是他的获取appsettings的代码其实不用想都知道会报错。因为原来framwork时代获取appsettings的方法常见的是 System.Configura…

Dubbo配置注册中心设置application的name使用驼峰命名法可能存在的隐藏启动异常问题

原创/朱季谦 首先&#xff0c;先提一个建议&#xff0c;在SpringBootDubbo项目中&#xff0c;Dubbo配置注册中心设置的application命名name的值&#xff0c;最好使用xxx-xxx-xxx这样格式的&#xff0c;避免随便使用驼峰命名。因为使用驼峰命名法&#xff0c;在Spring的IOC容器…

Java核心知识点整理大全13-笔记

Java核心知识点整理大全-笔记_希斯奎的博客-CSDN博客 Java核心知识点整理大全2-笔记_希斯奎的博客-CSDN博客 Java核心知识点整理大全3-笔记_希斯奎的博客-CSDN博客 Java核心知识点整理大全4-笔记-CSDN博客 Java核心知识点整理大全5-笔记-CSDN博客 Java核心知识点整理大全6…

激光雷达报告:单月上车提前突破5万台关口!车企真实搭载「去伪存真」

高工智能汽车研究院监测数据显示&#xff0c;截至2023年9月&#xff0c;激光雷达已经连续2个月交付破5万台关口。 这也意味着&#xff0c;这一交付关口早于预期被突破。回溯来看&#xff0c;2023年6月&#xff0c;高工智能汽车研究院在第十四届智驾开发者大会上释放预测&#…

战地5无限序章(无法保存)的解决办法

启动游戏后&#xff0c;目录就会自动变成这样了&#xff0c;也不会无限循环了&#xff01;

C++类与对象(5)—流运算符重载、const、取地址

目录 一、流输出 1、实现单个输出 2、实现连续输出 二、流输入 总结&#xff1a; 三、const修饰 四、取地址 .取地址及const取地址操作符重载 五、[ ]运算符重载 一、流输出 1、实现单个输出 创建一个日期类。 class Date { public:Date(int year 1, int month 1,…

践行“互联网+中药服务”理念,华润煎配中心打造智能代煎新模式

移动互联网时代&#xff0c;“互联网&#xff0b;”浪潮迭起&#xff0c;中药企业开始探索“互联网&#xff0b;中药服务”模式。 华润湖南医药有限公司&#xff08;以下简称“华润湖南医药”&#xff09;作为华润集团旗下华润湖南医药商业集团全资控股的大型医药企业&#xff…

你听过斯大林病毒吗?

相信不少小伙伴看过这种红眼特效&#xff0c;那么你知道这个特效最早出自哪里吗&#xff1f; 其实这个红眼病毒最早出于俄罗斯的电脑病毒斯大林&#xff0c;一旦电脑感染这个病毒&#xff0c;屏幕上就会出现自带一个红眼特效的斯大林人像&#xff0c;同时不断播放苏联国歌。 …

基于侏儒猫鼬算法优化概率神经网络PNN的分类预测 - 附代码

基于侏儒猫鼬算法优化概率神经网络PNN的分类预测 - 附代码 文章目录 基于侏儒猫鼬算法优化概率神经网络PNN的分类预测 - 附代码1.PNN网络概述2.变压器故障诊街系统相关背景2.1 模型建立 3.基于侏儒猫鼬优化的PNN网络5.测试结果6.参考文献7.Matlab代码 摘要&#xff1a;针对PNN神…

关于提示SLF4J: Class path contains multiple SLF4J bindings的问题解决

今天搭建hbase的时候启动hbase的时候shell面板输入了一大堆日志&#xff0c;如下&#xff1a; stopping hbase.....................SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/opt/software/hadoop-3.1.3/share/hadoop/common/l…

hdlbits系列verilog解答(exams/m2014_q4f)-47

文章目录 一、问题描述二、verilog源码三、仿真结果 一、问题描述 实现以下电路&#xff1a; 二、verilog源码 module top_module (input in1,input in2,output out);assign out in1 & (~in2);endmodule三、仿真结果 转载请注明出处&#xff01;

实验题【网关设置+VRRP+静态路由+OSPF】(H3C模拟器)

嘿&#xff0c;这里是目录&#xff01; ⭐ H3C模拟器资源链接1. 实验示意图2. 要求和考核目标3. 当前配置3.1 PC1、PC2、PC3、PC4和PC5配置3.2 SW配置3.2.1 SW2配置3.2.2 SW3配置3.2.3 SW4配置3.2.4 SW1配置 3.2. R配置3.2.1 R1配置3.2.2 R2配置 ⭐ H3C模拟器资源链接 H3C网络…

篮桥云课-摆玩具

思维好题 一开始掉进了二分的陷阱&#xff0c;发现看看逐个位置的差&#xff0c;我们要分成k段就是要取消k-1个最大的逐差 然后将剩余的加起来就可以了 因为本体保证是从小到大给出的 这一点保证了答案的正确性&#xff0c;自己没想出来 还是太菜了 #include<bits/stdc.h&…

Apache Superset数据分析平台如何实现公网实时远程访问数据【内网穿透】

文章目录 前言1. 使用Docker部署Apache Superset1.1 第一步安装docker 、docker compose1.2 克隆superset代码到本地并使用docker compose启动 2. 安装cpolar内网穿透&#xff0c;实现公网访问3. 设置固定连接公网地址 前言 Superset是一款由中国知名科技公司开源的“现代化的…

从零开始学优惠券样式代码编写,让你的网站焕然一新!

样式1&#xff1a; 代码实例&#xff1a; <div class"box"><div class"itemBox"><div class"leftBox">全额抵扣</div><div class"rightBotton"><button>立即使用</button></div><…

[BJDCTF 2020]easy_md5

md5(string,raw) 所以首先我们要找到一个字符串&#xff0c;这个字符串经过md5得到的16位原始二进制的字符串能帮我们实现sql注入。 我们的目标就是要找一个字符串取32位16进制的md5值里带有276f7227这个字段的&#xff0c;接着就是要看关键的数字部分了&#xff0c;在276f72…

Error running Tomcat8: Address localhost:1099 is already in use 错误解决

摘要: 有时候运行web项目的时候会遇到 Error running Tomcat8: Address localhost:1099 is already in use 的错误&#xff0c;导致web项目无法运行。这篇 blog 介绍了解决办法。 有时候运行web项目的时候会遇到 Error running Tomcat8: Address localhost:1099 is already in …

【广州华锐互动】Web3D云展编辑器能为展览行业带来哪些便利?

在数字时代中&#xff0c;传统的展览方式正在被全新的技术和工具所颠覆。其中&#xff0c;最具有革新意义的就是Web3D云展编辑器。这种编辑器以其强大的功能和灵活的应用&#xff0c;正在为展览设计带来革命性的变化。 广州华锐互动开发的Web3D云展编辑器是一种专门用于创建、编…

Altium Designer学习笔记13

0603电容封装的画法&#xff1a; 再画下三极管SOT-23的三极管的封装图&#xff1a; 画出三极管的封装图&#xff1a; 在画图的过程中&#xff0c;遇到了一个问题&#xff0c;画闭环线路的时候&#xff0c;就会被自动删除&#xff0c;查出是这个地方的配置需要进行修改。 那这个…