Python中的奇趣代码392


Python以其易于学习和强大的功能而闻名。除了它的实用性,Python还是一个有趣的语言,可以用来创建令人惊叹的代码。本文将探讨一些有趣的Python代码,探索语言的独特性和创造力。

1. Fibonacci生成器

斐波那契数列是一个无限数列,其下一个数字是前面两个数字之和。以下代码生成Fibonacci数列:```python
def fibonacci(n):
a, b = 0, 1
for _ in range(n):
a, b = b, a + b
return a
```

2. 质数检查器

以下代码检查给定数字是否为质数:```python
def is_prime(n):
if n < 2:
return False
for i in range(2, int(n0.5) + 1):
if n % i == 0:
return False
return True
```

3. 九九乘法表

以下代码打印九九乘法表:```python
for i in range(1, 10):
for j in range(1, 10):
print(i * j, end=" ")
print()
```

4. 贪吃蛇游戏

贪吃蛇是一个经典游戏,可以使用Python编写。以下代码创建一个基本的贪吃蛇游戏:```python
import pygame
import random
# 初始化游戏
()
screen = .set_mode((640, 480))
clock = ()
# 蛇的初始位置和方向
snake = [(100, 100), (90, 100), (80, 100)]
direction = "right"
# 主游戏循环
running = True
while running:
# 处理事件
for event in ():
if == :
running = False
elif == :
if == pygame.K_UP and direction != "down":
direction = "up"
elif == pygame.K_DOWN and direction != "up":
direction = "down"
elif == pygame.K_LEFT and direction != "right":
direction = "left"
elif == pygame.K_RIGHT and direction != "left":
direction = "right"
# 更新蛇的位置
if direction == "up":
(0, (snake[0][0], snake[0][1] - 10))
elif direction == "down":
(0, (snake[0][0], snake[0][1] + 10))
elif direction == "left":
(0, (snake[0][0] - 10, snake[0][1]))
elif direction == "right":
(0, (snake[0][0] + 10, snake[0][1]))
# 删除蛇尾
()
# 渲染屏幕
((0, 0, 0))
for segment in snake:
(screen, (255, 255, 255), (segment[0], segment[1], 10, 10))
# 检查游戏是否结束
if snake[0] in snake[1:]:
running = False
# 更新显示
()
# 控制游戏速度
(10)
# 退出游戏
()
```

5. 神经网络

神经网络是一种机器学习算法,可以使用Python实现。以下代码创建一个简单的神经网络:```python
import numpy as np
# 输入数据
inputs = ([[0, 0], [0, 1], [1, 0], [1, 1]])
# 输出数据
outputs = ([[0], [1], [1], [0]])
# 权重
weights = ([[0.5, 0.5], [0.5, 0.5]])
# 偏置
bias = ([0.5])
# 激活函数
def sigmoid(x):
return 1 / (1 + (-x))
# 前向传播
for i in range(1000):
# 计算隐藏层的输出
hidden_layer = sigmoid((inputs, weights) + bias)
# 计算输出层的输出
output_layer = sigmoid((hidden_layer, weights) + bias)
# 计算误差
error = outputs - output_layer
# 更新权重和偏置
weights -= 0.01 * (hidden_layer.T, error)
bias -= 0.01 * (error, axis=0)
```

6. 分形树

分形树是一种自相似结构,可以使用Python绘制。以下代码绘制一棵分形树:```python
import turtle
# 初始化乌龟
(0)
(90)
# 绘制分形树
def draw_tree(length, depth):
if depth == 0:
(length)
else:
(length)
(45)
draw_tree(length / 2, depth - 1)
(90)
draw_tree(length / 2, depth - 1)
(45)
(length)
# 设置绘制参数
length = 100
depth = 10
# 绘制分形树
draw_tree(length, depth)
# 隐藏乌龟
()
```

7. 混沌游戏

混沌游戏是一种生成美丽图案的算法。以下代码创建一个混沌游戏:```python
import random
import turtle
# 设置颜色
colors = ["red", "orange", "yellow", "green", "blue", "indigo", "violet"]
# 初始化乌龟
(0)
()
# 设置起点
(0, 0)
# 主循环
for i in range(10000):
# 选择一个随机颜色
color = (colors)
# 移动乌龟到随机点
x = (-200, 200)
y = (-200, 200)
(x, y)
# 绘制点
(1, color)
# 隐藏乌龟
()
```

8. 文字云

文字云是一种使用不同大小和颜色的单词来创建图像的技术。以下代码创建一个文字云:```python
import wordcloud
# 创建文字云
text_cloud = ().generate("This is a text cloud.")
# 保存文字云
text_cloud.to_file("")
```

9. 自然语言处理

自然语言处理(NLP)是计算机理解和处理人类语言的能力。以下代码执行一个简单的NLP任务,识别文本中的名词:```python
import nltk
# 下载NLTK数据
("averaged_perceptron_tagger")
# 分词和词性标注
text = "The quick brown fox jumps over the lazy dog."
tokens = nltk.word_tokenize(text)
tagged_tokens = nltk.pos_tag(tokens)
# 提取名词
nouns = [token[0] for token in tagged_tokens if token[1] == "NN"]
# 打印名词
print(nouns)
```

10. 密码生成器

以下代码生成一个随机的、安全的密码:```python
import random
import string
# 密码长度
length = 16
# 字符集
characters = list(string.ascii_letters + + "!@#$%^&*()")
# 生成密码
password = "".join((characters, k=length))
# 打印密码
print(password)
```

11. 图像处理

Python可以使用库,如Pillow,进行图像处理。以下代码调整图像的亮度:```python
from PIL import Image, ImageEnhance
# 加载图像
image = ("")
# 调整亮度
en

2024-10-12


上一篇:Python经典俄罗斯方块代码

下一篇:Python 从 CSV 文件中读取和写入数据