![人工智能基础教程:Python篇(青少版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/783/26846783/b_26846783.jpg)
上QQ阅读APP看书,第一时间看更新
4.6 趣味练习
本章的趣味练习要继续讲解第2章中使用过的eval函数,先来看程序4.8。
程序4.8:
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0441.jpg?sign=1738879271-fbH546SNAInRYealtk5Gc98ajm0aEvID-0-c07c970828484057f9712427b4d99e49)
输出,如图4.7所示:
![](https://epubservercos.yuewen.com/EFD799/15289821505523106/epubprivate/OEBPS/Images/aa0442.jpg?sign=1738879271-pxkSWDWn8RcJLyHljpqr58X95smrbUPa-0-eb823b8ff99a2147040b8366f6d1f477)
图4.7 程序4.8输出结果
点睛:
程序的第3行,turtle.bgcolor()用来设置画布的颜色。第6行使用eval函数将整个字符串直接读成列表,此时的name_list的值为['Leo', 'Lily', 'Tom', 'Alex', 'Max'],它是一个列表,同时,我们还可以用eval函数将字符串中的字典或元组转换为用于程序处理的字典或元组。
程序的第11行和第13行的现实意义为画画的提笔和落笔动作,它在程序中的作用为将移动时的线条去除掉。程序中的 t.write 表示在画布中写下信息,参数 font=('Arial', int((x+4)/4))表示要写下信息的字体名和字号。
趣味一刻:
如果将程序的第15行内容改为t.left(540/len(name_list) + 3),会有什么效果呢?