string_format_error.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. # tests for errors in {} format string
  2. try:
  3. '{0:0}'.format('zzz')
  4. except (ValueError):
  5. print('ValueError')
  6. try:
  7. '{1:}'.format(1)
  8. except IndexError:
  9. print('IndexError')
  10. try:
  11. '}'.format('zzzz')
  12. except ValueError:
  13. print('ValueError')
  14. # end of format parsing conversion specifier
  15. try:
  16. '{!'.format('a')
  17. except ValueError:
  18. print('ValueError')
  19. # unknown conversion specifier
  20. try:
  21. 'abc{!d}'.format('1')
  22. except ValueError:
  23. print('ValueError')
  24. try:
  25. '{abc'.format('zzzz')
  26. except ValueError:
  27. print('ValueError')
  28. # expected ':' after specifier
  29. try:
  30. '{!s :}'.format(2)
  31. except ValueError:
  32. print('ValueError')
  33. try:
  34. '{}{0}'.format(1, 2)
  35. except ValueError:
  36. print('ValueError')
  37. try:
  38. '{1:}'.format(1)
  39. except IndexError:
  40. print('IndexError')
  41. try:
  42. '{ 0 :*^10}'.format(12)
  43. except KeyError:
  44. print('KeyError')
  45. try:
  46. '{0}{}'.format(1)
  47. except ValueError:
  48. print('ValueError')
  49. try:
  50. '{}{}'.format(1)
  51. except IndexError:
  52. print('IndexError')
  53. try:
  54. '{0:+s}'.format('1')
  55. except ValueError:
  56. print('ValueError')
  57. try:
  58. '{0:+c}'.format(1)
  59. except ValueError:
  60. print('ValueError')
  61. try:
  62. '{0:s}'.format(1)
  63. except ValueError:
  64. print('ValueError')
  65. try:
  66. '{:*"1"}'.format('zz')
  67. except ValueError:
  68. print('ValueError')
  69. # unknown format code for str arg
  70. try:
  71. '{:X}'.format('zz')
  72. except ValueError:
  73. print('ValueError')