# 複習Python
## python[::-1]和[-1]用法
[::-1]順序相反操作
[-1]讀取倒數第一個元素
[3 ::-1]從下標為3(從0開始)的元素開始翻轉讀取
同樣適用於字符串
eg:
```python=
a=[1,2,3,4,5]
b=a[::-1]
```
output
```
[5, 4, 3, 2, 1]
```
```python=
b=a[-1]
```
output
```
5
```
```python=
b=a[3::-1]
```
output
```
[4, 3, 2, 1]
```
## map() 使用方法
map() 的使用方法,基本上是 map(function, iterable) 就好。 function 輸入我們要使用的函數, iterable 輸入我們要迭代輸入的對象,比如說一個 List。
## [leetcode] Reverse Integer
```python=
class Solution:
def reverse(self, x: int) -> int:
reverseValue = int(str(abs(x))[::-1])
if x > 0:
reverseValue = reverseValue
else:
reverseValue = -reverseValue
if pow(-2, 31) < reverseValue < pow(2, 31) - 1:
return reverseValue
else:
return 0
```
## [leetcode] Palindrome Number
```python=
class Solution:
def isPalindrome(self, x: int) -> bool:
return str(x) == str(x)[::-1]
```
## [leetcode] Roman to Integer
```python=
class Solution:
def romanToInt(self, s: str) -> int:
roman_to_integer = {'I': 1,
'V': 5,
'X': 10,
'L': 50,
'C': 100,
'D': 500,
'M': 1000}
s = s.replace('IV', 'IIII') \
.replace('IX', 'VIIII') \
.replace('XL', 'XXXX') \
.replace('XC', 'LXXXX') \
.replace('CD', 'CCCC') \
.replace('CM', 'DCCCC')
return sum(map(roman_to_integer.get, s))
```