bibidong 发表于 2020-10-13 12:42:43

python 字符串转换的问题

如图所示,为什么

kogawananari 发表于 2020-10-13 13:01:23

本帖最后由 kogawananari 于 2020-10-13 13:03 编辑

你分别运行我这两个代码就知道了 直接py文件双击运行
while 1:
    ex = input('>>> ')
    try:
      try:
            print(eval(ex))
      except SyntaxError as e:
            exec(ex)
    except Exception as e:
      print("Traceback (most recent call last):")
      print(e)
这个是你想得
下面这个是真实的
while 1:
    ex = input('>>> ')
    try:
      exec(compile(ex,'','single'))
    except Exception as e:
      print("Traceback (most recent call last):")
      print(e)

至于魔术方法repr和str也算是原因 但是不好解释这个

kogawananari 发表于 2020-10-13 13:10:38

>>> print(f'{c!s}')
5000000000000000.0
>>> print(f'{c!r}')
'5000000000000000.0'
>>> print(str(c))
5000000000000000.0
>>> print(repr(c))
'5000000000000000.0'
>>>

魔术方法方面的解释 但是不好解释这个 input('>>> ')直接变量回车{:10_289:}

疾风怪盗 发表于 2020-10-13 13:16:26

这个不就是一个显示效果么。。。。。。。。

IDLE中直接输入变量名,查看变量的值

像pycharm就不行,必须要print才能查看

这个有啥好研究的。。。。。。。。

hyl_0718 发表于 2020-10-13 14:52:26

print(c)是打印变量对应的字符串的值;
c是打印这个变量的字符串
页: [1]
查看完整版本: python 字符串转换的问题