25_rawstring.py 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. a = r'1\232\\\13'
  2. assert a == '1\\232\\\\\\13'
  3. b = r'测\试'
  4. assert len(b) == 3
  5. assert b == '测\\试'
  6. s = '''asdasd
  7. asds1321321321测试测试
  8. '''
  9. assert s == 'asdasd\nasds1321321321测试测试\n'
  10. s = r'''asdasd
  11. asds1321321321测试\测试'''
  12. assert s == 'asdasd\nasds1321321321测试\\测试'
  13. t = 4
  14. assert f'123{t}56789' == '123456789'
  15. b = 123
  16. s = f'''->->{s}<-<-
  17. {b}
  18. '''
  19. assert s == '->->asdasd\nasds1321321321测试\\测试<-<-\n123\n'
  20. assert r''' ' ''' == " ' "
  21. a = 10
  22. assert f'{a}' == '10'
  23. assert f'{a:>10}' == ' 10'
  24. assert f'{a:<10}' == '10 '
  25. assert f'{a:<10.2f}' == '10.00 '
  26. assert f'{a:>10.2f}' == ' 10.00'
  27. assert f'{a:^10}' == ' 10 '
  28. assert f'{a:^10.2f}' == ' 10.00 '
  29. assert f'{a:3d}' == ' 10'
  30. assert f'{a:10d}' == ' 10'
  31. assert f'{a:1d}' == '10'
  32. assert f'{a:010}' == '0000000010'
  33. assert f'{a:010d}' == '0000000010'
  34. assert f'{a:010f}' == '010.000000'
  35. assert f'{a:010.2f}' == '0000010.00'
  36. assert f'{a:.2f}' == '10.00'
  37. assert f'{a:.5f}' == '10.00000'
  38. b = '123'
  39. assert f'{b:10}' == '123 '
  40. assert f'{b:>10}' == ' 123'
  41. assert f'{b:1}' == '123'
  42. assert f'{b:10s}' == '123 '
  43. obj = object()
  44. obj.b = '123'
  45. assert f'{obj.b:10}' == '123 '
  46. assert f'{obj.b:>10}' == ' 123'
  47. assert f'{obj.b:1}' == '123'
  48. assert f'{obj.b:10s}' == '123 '
  49. a = [(1,2), 3, obj]
  50. assert f'{a[0][1]}' == '2'
  51. assert f'abc{a[-1].b:10}==={1234}' == 'abc123 ===1234'
  52. assert f'{"text":10}' == 'text '
  53. assert f'{"test":*>10}' == '******test'
  54. assert f'{"test":*<10}' == 'test******'
  55. assert f'{"test":*^10}' == '***test***'
  56. assert f'{"test":*^11}' == '***test****'
  57. assert f'{12345:0>10}' == '0000012345'
  58. assert f'{obj.b!r:10}' == "'123' "
  59. assert f'{obj.b!r:*>10}' == "*****'123'"
  60. assert f'{obj.b!r:1}' == "'123'"
  61. assert f'{obj.b!r:10s}' == "'123' "
  62. assert f'{"text"!r:10}' == "'text' "
  63. assert f'{"test"!r:*>10}' == "****'test'"
  64. assert f'{"test"!r:*<10}' == "'test'****"
  65. assert f'{"test"!r:*^10}' == "**'test'**"
  66. assert f'{"test"!r:*^11}' == "**'test'***"
  67. assert f'{12345!r:0>10}' == "0000012345"
  68. class A:
  69. def __repr__(self):
  70. return 'A()'
  71. def __str__(self):
  72. return 'A'
  73. a = A()
  74. assert f'{a!r:10}' == 'A() '
  75. assert f'{a!s:10}' == 'A '
  76. assert f'{a:10}' == 'A '
  77. assert f'{A()!r:10}' == 'A() '
  78. assert f'{A()!s:10}' == 'A '
  79. assert f'{A():10}' == 'A '