1. 心得
1.這種學習方式覺得挺好的,可以檢視看自己那些環節沒理解透徹。
像之前看書本或影片時候,沒有留意到二進制、八進制、十六進制的表示方式。
2.佔位符號的運用也是先前不常使用的部分,
但藉由這樣的輸入可以發現程式及畫面可以比較精煉美觀。
3.邏輯運算符號的複合式運用也比較生疏,尤其是在 and 跟 or的運用,
可以在程式的執行上製造出短路的效果。
4.練習題的部分,有人說能夠從空白的程式寫出答案才會是自己真的學會。
綜合心得:
寫程式的時候真的還蠻愉快的,不過如果思路沒想好,或是卡關的時候的確會陷入苦惱,真的很像解數學題目。但想通了就是那個haha point的快樂。
<<人生要自己規劃,如果不想規劃,那麼就必然會是別人規劃的道路,
而那往往是自己所不愛的>>
2. 本日學習摘要
Day02 - 語言元素
程序和進制- 指令和程序/ 馮諾依曼機/ 二進制和十進制/ 八進制和十六進制
變量和類型- 變量的命名/ 變量的使用/ input函數/ 檢查變量類型/ 類型轉換
數字和字符串- 整數/ 浮點數/ 複數/ 字符串/ 字符串基本操作/ 字符編碼
運算符- 數學運算符/ 賦值運算符/ 比較運算符/ 邏輯運算符/ 身份運算符/ 運算符的優先級
應用案例- 華氏溫度轉換成攝氏溫度/ 輸入圓的半徑計算周長和麵積/ 輸入年份判斷是否是閏年
3. 程式碼
##整數
#二進制(0b)、八進制(0o)、十六進制(0x)
print("二進制的數:",0b100)
print("八進制的數:",0o100)
print("十六進制的數:",0x100)
##浮點數
#支援科學技數法 e2= 10^2
print("使用科學技數法(1.2345e2)=",1.2345e2)
##使用變量進行加減乘除
a = 123
b = 45
print("兩數的四則運算:",a,"跟",b)
print("加法:", a + b)
print("減法:", a - b)
print("乘法:", a * b)
print("除法:", a / b)
##使用type()檢查變量的類型
a = 10
b = 1.23
c = 1 +2j
d = 'hello, world'
e = True
print("""a = 10
b = 1.23
c = 1 +2j
d = 'hello, world'
e = True""")
print('a的類型是:',type(a))
print('b的類型是:',type(b))
print('c的類型是:',type(c))
print('d的類型是:',type(d))
print('e的類型是:',type(e))
##類型轉換
"""
int() :將一個數值或字符串轉換成整數,可以指定進制。
float():將一個字符串轉換成浮點數。
str() :將指定的對象轉換成字符串形式,可以指定編碼。
"""
##使用者輸入數字,並進行運算
# %d 整數佔位符號、 %f 小數佔位符號
a = int ( input ( 'a = ' ))
b = int ( input ( 'b = ' ))
print ( '%d + %d = %d' % ( a , b , a + b ))
print ( '%d - %d = %d' % ( a , b , a - b ))
print ( '%d * %d = %d' % ( a , b, a * b ))
print ( '%d / %d = %f' % ( a , b , a / b ))
print ( '%d // %d = %d' % ( a , b , a // b ))
print ( '%d %% %d = %d' % ( a , b , a % b ))
print ( '%d ** %d = %d' % ( a , b , a ** b ))
##複合運算符號
a = 10
b = 2
print("a的數值:", a)
a += b #相當於a = a+b
print("a+b的數值:", a)
a *= a+1 #相當於a = a*(a+1)
print("a*(a+1)的數值:", a)
#比較運算符和邏輯運算符
"""
True and True = True
True and False = False
False and True = False 當左邊是False,則右邊不執行
and 左右兩邊都是True才會是 True
or 左右兩邊只要有一個是True,就會是True
"""
##比較運算符和邏輯運算符的使用
flag0 = 1 == 1
flag1 = 3 > 2
flag2 = 2 < 1
flag3 = flag1 and flag2
flag4 = flag1 or flag2
flag5 = not ( 1 != 2 )
print ( 'flag0 =' , flag0 ) # flag0 = True
print ( 'flag1 =' , flag1 ) # flag1 = True
print ( 'flag2 =' , flag2 ) # flag2 = False
print ( 'flag3 =' , flag3 ) # flag3 = False
print ( 'flag4 =' , flag4 ) # flag4 = True
print ( 'flag5 =' , flag5 ) # flag5 = False
#練習1 華氏溫度轉換為攝氏溫度
#公式為 C = (F - 32)/1.8
f = float(input("請輸入華氏溫度:"))
c = (f - 32) / 1.8
print('%.1f華氏溫度=%.1f攝氏溫度' %(f,c))
#練習2:輸入圓的半徑計算計算周長和麵積。
radius = float (input("請輸入圓的半徑: "))
perimeter = 2 * 3.1416 * radius
area = 3.1416 * (radius ** 2)
print( '周長:%.2f' % perimeter)
print( '面積:%.2f' % area)
#練習3:輸入年份判斷是否為閏年。
#閏年輸出True,否則輸出False
#4的倍數 ,但100的倍數不是閏年,但遇到400的倍數會是閏年。
year = int(input("請輸入年分:"))
leap_year = year % 4 == 0 and year % 100 != 0 or year % 400 == 0
print(leap_year)
參考資料:Day02