y_ = lst_body[len_body - 1].ycor()这段代码会报错,原因是'str' object has no attribute 'xcor',请帮我解决这个问题,让lst_body[len_body - 1]可以拥有到其代表的字符串的类
时间: 2023-06-11 07:04:48 浏览: 33
型的xcor()方法。
首先需要弄清楚lst_body[len_body - 1]代表的是一个字符串,而不是一个Turtle对象,因为字符串类本身是没有xcor()方法的。
如果想要让lst_body[len_body - 1]拥有到其代表的字符串的类型的xcor()方法,可以考虑使用Turtle对象来代替字符串,将字符串与Turtle对象进行映射。
具体实现方法如下:
1. 在Turtle模块中定义一个字典变量,用来进行字符串与Turtle对象的映射,例如:
string_turtle_map = {}
2. 在程序中,当需要使用字符串时,首先从字典中查找对应的Turtle对象。如果找到了,则直接使用其xcor()方法;如果没有找到,则创建一个新的Turtle对象,并将其与字符串进行映射,例如:
if lst_body[len_body - 1] in string_turtle_map:
turtle_obj = string_turtle_map[lst_body[len_body - 1]]
else:
turtle_obj = Turtle() # 创建新的Turtle对象
string_turtle_map[lst_body[len_body - 1]] = turtle_obj # 将字符串与Turtle对象进行映射
y_ = turtle_obj.ycor()
通过以上实现方式,就可以让lst_body[len_body - 1]拥有到其代表的字符串的类型的xcor()方法了。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)