# python基礎介紹
## 2022/02/25 電算社第一堂社課
---
### python是什麼
----

----
* 容易撰寫(競賽中容易TLE)
* 功能強大
----
可使用的編輯器
* python
* pythonIDLE
* VSCode
* Google Colab
* Spyder
本學期使用Google Colab作為編輯器:D
(後面可能會用Spyder)
---
### 註解
----
python的單行註解是在前面加上#
多行註解則是用"""包起來
----
```python=
# 早安
"""
我是多行註解
:D
"""
```
---
### Hello world!
----
試著輸出Hello world!吧
----
```python=
print("Hello world!")
```
----
輸出
```python=
print()
```
---
### 變數
----
python宣告變數不用給資料型態
他會自己判斷
----
```python=
a = 123 # 整數
b = "abc" # 字串
c = "123" # 字串
d = 123.1 # 浮點數
```
---
### 基本輸入輸出
----
試著讓程式可以輸入一點東西吧
----
```python=
a = input()
print(a)
```
----
輸入
```python=
a = input()
```
----
輸出
```python=
print('a') # 單筆輸出 a
print('a', 'b') # 多筆輸出 a b
print('a', 'b', sep = ',') # a,b
print('a', 'b', sep = '') # ab
```
無sep則中間會自動輸出空格
----
python在輸出時會自動幫你換行
使用end可以改變
```python=
print('a')
print('b') # a \n b
print('a', end = '') # 不換行
print('b') # ab
print('a', end = ',')
print('b') # a,b
```
----
若沒規定輸入的資料型態
python會自動設定為字串
但當然也可以規定
----
```python=
a = int(input()) # 只能輸入整數
b = str(input()) # 只能輸入字串
```
---
### 資料型態
----
如同C++,python也有資料型態,只是名稱可能不同
----
* 整數(int)
* 浮點數(float)
* 布林值(bool)
* 字元(chr)
* 字串(str)
* 陣列(list)
可以利用type()函式輸出資料型態
----
```python=
a = 123
b = "123"
print(type(a)) # <class 'int'>
print(type(b)) # <class 'str'>
```
----
單引號 vs 雙引號
C++會有這個困擾,但python沒有:D
不管是字串還是字元兩者皆可以用
----
```python=
a = 'a' # (o)
b = "b" # (o)
c = 'c8763' # (o)
d = "d1234" # (o)
```
---
### 運算
----
#### 普通運算
----
* \+ : 加法
* \- : 減法
* \* : 乘法
* \/ : 除法(會產生小數)
* \// : 除法(小數後捨去)
* \% : 取餘數
* \** : 指數
----
數字運算
```python=
a = 1 + 2 * (3 - 4) / 5
print(a) # 0.6
b = 1 + 2 * (3 - 4) // 5
print(b) # 0
```
----
字串運算
```python=
a = "abc"
b = "123"
print(a + b) # abc123
print(a * 2) # abcabc
```
----
#### 條件運算
----
* \> : 大於
* \< : 小於
* \== : 等於
* \>= : 大於等於
* \<= : 小於等於
* \!= : 不等於
----
```python=
print(5 >= 3) # True
print(5 == 3) # False
print(5 != 3) # True
```
----
#### 邏輯運算
----
* a and b : 且
* a or b : 或
* not a : 相反
----
```python=
print((5 >= 3) and (5 == 3)) # False
print((5 >= 3) or (5 == 3)) # True
print(not(5 >= 3)) # False
```
---
### 小練習
----
輸入正整數$a, b$,幫忙算算$a, b$的和、差、積、$a/b$的商數以及餘數吧(中間以逗號隔開)
----
**輸入說明:** 輸入兩個正整數$a, b$
**輸出說明:** 輸出和、差、積、$a/b$的商數以及餘數(中間以逗號隔開)
**範例輸入:** 5 3
**範例輸出:**
```
8,2,15,1,2
```
----
我是防雷頁:D
----
解答
```python=
a = int(input())
b = int(input())
print(a + b, a - b, a * b, a // b, a % b, sep = ',')
```
{"metaMigratedAt":"2023-06-16T19:47:21.935Z","metaMigratedFrom":"YAML","title":"python基礎介紹","breaks":true,"slideOptions":"{\"transition\":\"slide\"}","contributors":"[{\"id\":\"68c94489-3c2e-4879-b847-e982f360b03c\",\"add\":2701,\"del\":110},{\"id\":\"4f731eff-9d88-41f4-af56-2e3e02f20cfc\",\"add\":24,\"del\":0}]"}