基本上我希望此代码执行的操作是将(systemType).clear()
替换为unix.clear
或windows.clear
。这甚至可能吗?
if(platform.system()=="Windows"):
systemType="windows"
else:
systemType="unix"
class unix:
def clear():
os.system('clear')
class windows:
def clear():
os.system('cls')
print("Detecing systemType")
time.sleep(1)
(systemType).clear()
错误为AttributeError: 'str' object has no attribute 'clear'
答案 0 :(得分:6)
如果将systemType
的分配移到类定义之后,您可以为它们分配类而不是它们的名称:
class unix:
def clear():
os.system('clear')
class windows:
def clear():
os.system('cls')
if platform.system()=="Windows":
systemType = windows
else:
systemType = unix
print("Detecing systemType")
time.sleep(1)
systemType.clear()
答案 1 :(得分:0)
import os
if os.name == "nt":
os.system("cls") #windows
else:
os.system("clear") #unix