text: # 算法_61_把字符串转化成整数
  
  ## Question
  将一个字符串转换成一个整数，要求不能使用字符串转换整数的库函数。 数值为0或者字符串不是一个合法的数值则返回0
  
  ```
  Solution1
  class Solution1:
      def StrToInt(self, s):
          try:
              return ____
          except:
              return 0
              
  Solution2
  class Solution2:
      def StrToInt(self, s):
          if not s:
              return 0
          num = []
          numbers = {'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}
          for i in s:
              if i in numbers.keys():
                  num.append(numbers[i])
              elif i == '+':
                  continue
              elif i == '-':
                  continue
              else:
                  return 0
          ans = 0
          for i in num:
              ans = ans * 10 + i
          if s[0] == '-':
              ans = 0 - ans
          return ____
  ```
  %!A. int(s), ans!%
  %!B.  s, ans!%
  %!C.  int(s), 0!%
  %!D.  s, 0!%
  
  ------
  
  ## Answer
  
  @!A!@
  
  ------
  ## Analysis
  思路一： 使用int()
  
  思路二：就是一些特殊处理，比如 +123，就不合理，123前面不需要+，但是-123就合理，因为这是个负数