---
# System prepended metadata

title: week03_0921_variable expression
tags: [pynote]

---

## week03_0921_variable expression 
### {上週使用函數}
1. print()
    - 輸出內容 如果要放置變數到輸出：print("" % () )
    - sep:分隔、end:結束
2. input()
    - 輸入內容 ""放顯示出來的文字
3. type()
    - 顯示資料型態
4. int()
    - 整數
5. float()
    - 浮點數
6. str()
    - 字串

### [inclass practice]

### {概念練習}
1. 變數命名
    - o:只能由大小寫英文字母、數字、底線、中文組成
    - x:第一個字母不能是數字、不能使用python內建保留字
2. 變數資料型態
    - 數值型態:int、float、bool(True、False，通常用在條件運算)
    - 字串型態:str
3. 數值型資料類型有哪些
    - 有int、float、bool
4. " + " 運篹子
    - for數值運算、字串組合
    - 資料型態相同才能執行
5. 輸出: " %d   %s  " % (參數列) 
    - %d:整數
    - %s字串
6. 輸出:  " {0}   {1}  ".format(參數列)
    - 變數的位置在字串裡用大括弧
    - {0}、{1}指定format後面變數的順序
7. 輸入命令
    - type:顯示項目資料型態
8. 運算子優先順序
    1. ()
    2. **
    3. +、-(正數、負數)
    4. *、/、%、//
    5. +、-(加法、減法)
    6. ==、!=、>、<、>=、<=
    7. not、and、or
    8. =、+=、-=、*=、/=、%=、//=、**=
9. view->Toggle Line Numbers可以顯示出每行號碼
10. 多行註解用三個單引號或雙引號打在段落的最外面


### {綜合演練}
### 實作題3
```
矩形的面積是長*寬、周邊長是(長+寬)*2
請設計程式讓使用者輸入矩形的長和寬，然後計算矩形面積和周邊長。
```

1. input
    - 長
    - 寬
2. process
    - 矩行的面積是長*寬
    - 周邊長是(長+寬)*2
3. output
    - 面積
    - 周邊長
    


```python
length = 5
width = 6

area = length * width
perimeter = (length + width) * 2

print("面積:", area)
print("周長:", perimeter)

```

    面積: 30
    周長: 22
    


```python
length = float(input("enter length:"))
width = float(input("enter width:"))

area = length * width
perimeter = (length + width) * 2
# print(type(length))

print("面積:", area)
print("周長:", perimeter)

```

    enter length:6
    enter width:5
    面積: 30.0
    周長: 22.0
    


```python
area = 40.0
perimeter = 100

print("面積:", area, "周長:", perimeter)
output = "面積:" + str(area) + "周長:" + str(perimeter)
print(output)

```

    面積: 40.0 周長: 100
    面積:40.0周長:100
    


```python

print("面積: %10.1f, \n周長: %d"  %(area, perimeter) )
# 移一個位子\t，換行\n

print("面積: {1:10.1f}, \n周長: {0}".format(perimeter, area) )
# 變數的位置在字串裡用大括弧
# 用{0}、{1}指定format後面變數的順序

```

    面積:       40.0, 
    周長: 100
    面積:       40.0, 
    周長: 100
    

### 實作題4
```
許多人出國時會有公制轉英制的困擾，以長度為例，英制和公制的長度轉換公式為:
1 inch (英吋) = 2.54 cm (公分)
請設計程式讓使用者輸入公制的身高(cm)，然後計算出英制的高度是幾英呎、幾英吋
1 英呎 = 12 英吋
```

1. input
    - 身高
2. process
    - cm to inch (/2.54)
    - inch to feet (/12)
3. output
    - 幾英尺
    - 幾英寸


```python
height = float(input("輸入身高:"))

to_inch = height / 2.54

to_feet = to_inch / 12


print("你的身高為多少英吋: {0:.1f}, \n你的身高為多少英尺: {1:.1f}".format(to_inch, to_feet))
```

    輸入身高:163
    你的身高為多少英吋: 64.2, 
    你的身高為多少英尺: 5.3
    

### [afterclass practice]

1. 綜合演練 實作題1-2  (需抄題在markdown cell)
2. 教學影音 lesson 5[、6、1]

### 實作題1
```
1. 一年一班只有2位同學，設計程式讓老師分別輸入2位同學的姓名及成績，然後計算成績總分，最後以下圖格式列印。
```


```python
name1 = input("請輸入第一位學生的姓名：")
score1 = int(input("請輸入第一位學生的成績: "))
name2 = input("請輸入第二位學生的姓名：")
score2 = int(input("請輸入第二位學生的成績: "))
total = score1 + score2
print()
print("姓名    成績")
print("%-4s  %3d" % (name1, score1))
print("%-4s  %3d" % (name2, score2))
print("成績總分為：%3d" % (total))
```

    請輸入第一位學生的姓名：林大毛
    請輸入第一位學生的成績: 78
    請輸入第二位學生的姓名：陳學文
    請輸入第二位學生的成績: 100
    
    姓名    成績
    林大毛    78
    陳學文   100
    成績總分為：178
    

### 實作題2
```
2. 計程車計費方式第1公里為85元，多1公里加收20元。設計程式讓運將輸入乘客的搭乘公里數，然後計算乘車費用。
```


```python
km = int(input("請輸入路程公里數 (整數)："))
money = 85 + (km - 1) * 20
print("你的車程車資費為：" + str(money))
```

    請輸入路程公里數 (整數)：8
    你的車程車資費為：225
    

### [self practice]
運算子先後優先順序


```python
# 1
a = 5 + 3 * 2 / (7 - 4)
print(a)
```

    7.0
    


```python
# 2
b = (10 % 3)**2 + 4 // 2
print(b)
```

    3
    


```python
# 3
c = (8 + 2) * (5 - 3) / 2
print(c)
```

    10.0
    


```python
# 4
d = 2 ** 3 + 4 ** (1 / 2) - 1
print(d)
```

    9.0
    


```python
# 5
e = (10 > 5)or(3 != 3)and(8 // 2 <= 4)
print(e)
```

    True
    


```python
# 6 
f = "Hello" + " " + "World" * 2
print(f)
```

    Hello WorldWorld
    


```python
# 7
g = (15 / 3) % 2 != 0 and not (10 > 7)
print(g)
```

    False
    


```python
# 8
h = (3 + 2)**2 / 4 * 5 % 6
print(h)
```

    1.25
    


```python
# 9
i = 2 * (4 + 6) - (5 % 3)**2
print(i)
```

    16
    


```python
# 10
j = len("Python") + int("3") + (5 > 2)
print(j)
```

    10
    