目前,我有:
def allcharacters():
def ch(u):
try:
c = chr(u)
print(c if c else '', end='')
except:
c = ''
return c
return dict(filter(lambda en: en[1], enumerate(map(ch, range(0x110000)))))
最后一行可能很难看(修改前更难),但我的问题集中在print
函数的调用上。这是我发现强制评估c
的唯一方法,它通过过滤掉空字符串来抛出allcharacters
工作所需的异常。我对一种没有副作用的替代品感兴趣。有没有办法告诉哪些字符对特定终端有效而不尝试print
它们而不做其他任何有副作用的事情?