写代码写的好烦
这些代码十分相似,我却只能复制粘贴十几遍,修改每一行细微的不同之处,担心漏了哪处,而不知道如何用双层for循环实现。
放到更高一维的数组然后用cue(1)到cue(4)代替hcue、fcue、scue、mcue并不可行,因为虽然我会对它们执行相同的操作,但这四个变量的数据类型完全不同。
思路:
1、可以用字符串格式化,如Python的占位符、新式字符串格式化、插值字符串格式等,实现有相同字符串的变量名遍历。
2、可以调用内置函数对字符串还原成对象,如Python的eval()。
由于我只会点Python,只能给出Python代码示例。我想,其他语言也是可以用这个“思想”实现的。
Python 代码示例
#!/sur/bin/nve python
# coding: utf-8
char = 'hfsm'
hcue, fcue, scue, mcue = '286', '386', '486', 'win95'
for i in char:
print(f"{i}cue")
for i in char:
print(eval(f"{i}cue"))
代码截屏图片
代码运行效果截屏图片
如截屏图片可见,遍历轮询,用字符串格式化,可以打印出变量名字符串。当用veal()函数把字符串还原成Python对象后,就可以打印出变量名所指向的值了。