Python是一种高级编程语言,由于其易于学习、大量的库和工具支持以及灵活性,现在被广泛应用于各种领域。在这篇文章中,我们将探讨两个不同的Python项目:找小说代码和弹球游戏制作代码。
1. 找小说代码
在现代社会,越来越多的人喜欢从网络上阅读小说。然而,有时候我们需要在不同的网站上寻找小说,这可能非常耗时。为了解决这个问题,我们可以使用Python编写一个小说搜索引擎,帮助我们在多个网站上找到我们需要的小说。
以下是一个简单的Python程序,可以在多个小说网站上搜索小说,并返回与关键字匹配的小说列表:
```python
import requests
from bs4 import BeautifulSoup
def search_novel(keywords):
sites = {
'https://www.biqubu.com': '笔趣阁',
'https://www.zwdu.com': '言情小说网',
'https://www.xbiquge6.com': '新笔趣阁',
}
novels = []
for site, name in sites.items():
url = site + "/search.php?q=" + keywords
response = requests.get(url)
soup = BeautifulSoup(response.content, 'html.parser')
links = soup.find_all('a')
for link in links:
if 'book' in link.get('href'):
novel = {'title': '', 'site': '', 'url': ''}
novel['title'] = link.text
novel['site'] = name
novel['url'] = site + link.get('href')
novels.append(novel)
return novels
if __name__ == '__main__':
novels = search_novel("诛仙")
for novel in novels:
print(novel['site'], novel['title'], novel['url'])
```
在这个程序中,我们首先定义了一个包含小说搜索网站的字典,然后我们遍历每个网站,并构造一个带有关键字的URL来搜索小说。随后,我们使用BeautifulSoup库解析返回的HTML,并搜索带有“book”关键字的链接,对于每个匹配的链接,我们提取小说的标题、网站名称和URL,并将它们存储到一个字典中。最后,我们将所有收集到的小说列表返回。
2. 弹球游戏制作代码
弹球游戏是一种非常有趣和富有挑战性的游戏。我们可以使用Python和Pygame库来制作一个简单的弹球游戏。
以下是一个基本的弹球游戏示例代码:
```python
import pygame
pygame.init()
# 设置窗口大小
window_size = (800, 600)
screen = pygame.display.set_mode(window_size)
pygame.display.set_caption("弹球游戏")
# 球的属性
ball_pos = [400, 300]
ball_radius = 10
ball_color = (255, 255, 255)
ball_speed = [5, 5]
# 板的属性
paddle_pos = [350, 580]
paddle_size = [100, 10]
paddle_color = (255, 255, 255)
paddle_speed = 0
# 游戏循环
game_over = False
clock = pygame.time.Clock()
while not game_over:
for event in pygame.event.get():
if event.type == pygame.QUIT:
pygame.quit()
quit()
elif event.type == pygame.KEYDOWN:
if event.key == pygame.K_LEFT:
paddle_speed = -5
elif event.key == pygame.K_RIGHT:
paddle_speed = 5
elif event.type == pygame.KEYUP:
if event.key in (pygame.K_LEFT, pygame.K_RIGHT):
paddle_speed = 0
# 移动板子
paddle_pos[0] += paddle_speed
if paddle_pos[0] < 0:
paddle_pos[0] = 0
elif paddle_pos[0] > window_size[0] - paddle_size[0]:
paddle_pos[0] = window_size[0] - paddle_size[0]
# 移动球
ball_pos[0] += ball_speed[0]
ball_pos[1] += ball_speed[1]
# 球碰到墙壁后反弹
if ball_pos[0] < ball_radius or ball_pos[0] > window_size[0] - ball_radius:
ball_speed[0] = -ball_speed[0]
if ball_pos[1] < ball_radius or ball_pos[1] > window_size[1] - ball_radius:
ball_speed[1] = -ball_speed[1]
# 球和板子之间的碰撞检测
if ball_pos[1] >= paddle_pos[1]:
if ball_pos[0] + ball_radius > paddle_pos[0] and ball_pos[0] - ball_radius < paddle_pos[0] + paddle_size[0]:
ball_speed[1] = -ball_speed[1]
# 如果球碰到板的中心部分,改变水平方向的速度
if abs(ball_pos[0] - paddle_pos[0] - paddle_size[0] // 2) < 20:
ball_speed[0] = ball_speed[0]
# 如果球碰到板的左侧,增加向左的水平方向速度
elif ball_pos[0] - paddle_pos[0] - paddle_size[0] // 2 < 0:
ball_speed[0] = -abs(ball_speed[0] + 1)
# 如果球碰到板的右侧,增加向右的水平方向速度
else:
ball_speed[0] = abs(ball_speed[0] + 1)
else:
game_over = True
# 绘制游戏场景
screen.fill((0, 0, 0))
pygame.draw.circle(screen, ball_color, ball_pos, ball_radius)
pygame.draw.rect(screen, paddle_color, (paddle_pos[0], paddle_pos[1], paddle_size[0], paddle_size[1]))
pygame.display.update()
clock.tick(60)
pygame.quit()
quit()
```
在此代码中,我们使用Pygame库来创建一个窗口,并设置弹球和板的属性,以及它们的移动速度。在游戏循环中,我们首先处理用户输入,并根据用户的输入移动板。然后,我们处理球的移动,并检查是否与墙壁发生碰撞,如果发生碰撞,就改变球的速度方向。最后,我们检查球和板之间的碰撞,如果发生碰撞,就改变球的方向和速度。
总结
Python是一种非常强大和灵活的编程语言,它可以用于各种不同的应用程序和场景,包括小说搜索引擎和弹球游戏。通过这篇文章,我们可以看到Python如何被用于这些应用程序,并且我们还学习了如何使用几个重要的Python库。
如果您想深入了解Python,我们推荐您阅读一些优秀的Python书籍,例如《Python编程:从入门到实践》、《流畅的Python》等。祝您好运! 如果你喜欢我们三七知识分享网站的文章, 欢迎您分享或收藏知识分享网站文章 欢迎您到我们的网站逛逛喔!https://www.ynyuzhu.com/
们一起经历过昨日,共享今日,期待明天!新的一年,愿在我的声声祝福里,自己能天天精彩,步步平安,时时开心,分分如意,秒秒幸福,新年快乐!