Python by sicc
===
:::danger
請愛惜共筆,勿進行惡意刪減
:::
:::info
課程講義:https://slides.com/sicc/python
:::
## 環境建構
- [python](https://www.python.org/downloads/)
- 記得勾選 `Add python.exe to PATH`
- 執行:`python 你的檔案.py`
- 也可以直接 `你的檔案.py`
- [colab](https://colab.research.google.com/?hl=zh-tw)
## Data Type
```python=
# 註解
a = 1 # int
b = 1.23 # float
c = "String" # String
d = 'String' # String
f = True # bool
'''
多行註解
'''
```
- ascii code
[維基百科](https://zh.wikipedia.org/zh-tw/ASCII)
- '1' != 1
`ord('1') = 49`

- 強制轉型
```python=
a = 1 # int
b = float(a) # change int to float
print(type(b)) # get the type of b
```
- list
```python=
x = [1, 3.14, "NISRA"]
x.append("Hello")
print(x[0]) # 1
print(x[-1]) # Hello
print(x[0:2]) # [1,3.14]
print(x[1:]) # [3.14, 'NISRA', 'Hello']
print(x[:]) # [1, 3.14, 'NISRA', 'Hello']
```
- dict
```python=
x = {
"name" : "John",
"StudentID" : 1,
"PI" : 3.14,
}#dict
print(x["name"]) # John
print(x["StudentID"]) # 1
print(x["PI"]) #3.14
```
## 輸入輸出
- input
```python=
str_in = input("Input what you want:")
# 預設 Data Type 為 String
print(str_in)
int_in = int(input("Input a number:"))
# int type
print(int_in)
a,b = input ("Enter 'A B'").split()
# 以空白鍵分開輸入
print(a,b)
```
- print
```python=
a = "string"
b = 1234
print(a , b)
print("{0:5} {1:4}".format(a,b))
print("{} {}".format(a,b))
print(f'{a} {b}')
#string 1234
```
## Operator
### Arithmetic Operators
- +, -, *, /,
- %
- \*\* 次方
- // 整數除法
### Assignment Operators
- =
- +=, -=, *=, /=
- %=
- **=, //=
- ...
### Compare Operator
- ==
- \>=, <=
- \>, <
- !=
### Logic Operators
- and
- or
- not
[Python Operators](https://www.w3schools.com/python/python_operators.asp)
## Condition
### if
```python=
x = 10
if(x >= 10):
# in if
# in if
#out if
```
```python=
x = 10
if(x >= 10){
# in if
# in if
# in if
}
#out if
```
### if ... else, if ... elif ... else
if ... else
```python=
x = 10
if(x >= 10):
# in if
# in if
else:
# in else
# in else
```
if ... elif ... else
```python=
if(x >= 10):
# in if
elif(x == 9):
# in elif
else:
# in else
# out if
```
## Loop
### for
```python=
for i in range(10):
print(i, end=' ')
# 0 1 2 3 4 5 6 7 8 9
print()
for i in range(1, 10):
print(i, end=' ')
# 0 1 2 3 4 5 6 7 8 9
print()
for i in range(2, 10, 2):
print(i, end=' ')
# 2 4 6 8
print()
```
```python=
number = ["one", "two", "three"]
for i in number:
print(i, end=' ')
# one two three
```
```python=
number = ["one","two","three"]
for i in "number":
print(i,end=' ')
# n u m b e r
```