import turtle
import math
# 窗口设置
screen = turtle.Screen()
screen.setup(800, 800)
screen.title("爱心滚动文字")
screen.bgcolor("black")
screen.tracer(0) # 关闭自动刷新
# 生成爱心坐标
points = []
for theta in (i * 0.02 for i in range(int(2 * math.pi / 0.015))):
x = 16 * (math.sin(theta) ** 3)
y = 13 * math.cos(theta) - 5 * math.cos(2 * theta) - 2 * math.cos(3 * theta) - math.cos(4 * theta)
points.append((x * 20, y * 20 - 100)) # 直接进行缩放平移
# 预创建文本对象
text_objects = []
for _ in range(68):
t = turtle.Turtle()
t.hideturtle()
t.penup()
t.color("#FF69B4") # 粉红色
t.speed(0)
text_objects.append(t)
# 真实68种语言列表(示例)
love_texts = [
" 我爱你"," Love you", "Te amo",
" Je t'aime", "Ich liebe dich", "愛してる",
" 사랑해", " Я тебя люблю", " أحبك",
" मैं तुमसे प्यार करता हूँ", " Eu te amo",
" Ti amo", "Ik hou van je", "Jag älskar dig",
" Seni seviyorum", " Kocham cię", " Σ'αγαπώ",
" ฉันรักคุณ", " Tôi yêu bạn", " Miluji tě",
" Jeg elsker dig", " Rakastan sinua", " Jeg elsker deg",
" Szeretlek", " Te iubesc", " Я тебе кохаю",
" আমি তোমায় ভালোবাসি", " دوستت دارم",
" אני אוהב אותך", " میں تم سے پیار کرتا ہوں",
" நான் உன்னை காதலிக்கிறேன்", " Aku tresna karo kowe",
" ਮੈਂ ਤੈਨੂੰ ਪਿਆਰ ਕਰਦਾ ਹਾਂ", " मी तुझ्यावर प्रेम करतो",
" હું તને પ્રેમ કરું છું", " ನಾನು ನಿನ್ನನ್ನು ಪ್ರೀತಿಸುತ್ತೇನೆ",
" Ես սիրում եմ քեզ",
" Maite zaitut",
" T'estimo", " Ég elska þig",
" Es tevi mīlu", " Aš tave myliu",
" Inħobbok", " Ljubim te",
" Ľúbim ťa", " Volim te",
" Волим те", " Обичам те",
" Я цябе кахаю", " Ma armastan sind",
" Të dua", " Те сакам",
" Би чамд хайртай", " म तपाईंलाई माया गर्छु",
" ខ្ញុំស្រឡាញ់អ្នក", " ຂ້ອຍຮັກເຈົ້າ",
" မင်းကိုချစ်တယ်", " Saya sayang awak",
" Aku cinta padamu", " Mahal kita",
" Aloha wau iā ʻoe", " Rwy'n dy garu di",
" Is breá liom tú", " Tha gaol agam ort",
" Mi amas vin", " qamuSHa'",
" Ayóó ánóshní", " Ngiyakuthanda",
" Ina son ku", " Mo nifẹ rẹ",
" Ndagukunda", " Kei te aroha au ki a koe",
" Ou te alofa ia te oe", " ང་ཁྱེད་རང་ལ་དགའ་པོ་ཡོད་",
" مەن سىزنى سويىمەن", " ꉢꆏꉂ",
" Gou maij mwngz", " 我愛你",
" 吾愛汝"
# 补充完整68种...
] * 6 # 临时填充
love_texts = love_texts[:68]
current_offset = 0
def update_frame():
global current_offset
# 计算每个文字的位置偏移
for i, t in enumerate(text_objects):
point_idx = (current_offset + i * 10) % len(points) # 10为间隔参数
x, y = points[point_idx]
t.clear()
t.goto(x, y)
t.write(love_texts[i], align="center", font=("Arial", 13, "normal"))
current_offset += 1
screen.update() # 手动刷新画面
screen.ontimer(update_frame, 50) # 控制动画速度
update_frame()
turtle.done() 怎么让爱心缩小一点