變數與運算式

      在〈變數與運算式〉中尚無留言

Q-001

你編寫了以下的程式碼
list_1=[1,2,3]
list_2=[4,5,6]
list_3=list_1+list_2
list_4=list_3*2
print(list_4)
執行程式碼的輸出值是?
A. [[1,2,3], [4,5,6], [1,2,3], [5,6,7]]
B. [4,10,18]
C. [1,2,3,4,5,6,1,2,3,4,5,6]
D. [[1,2,3,4,5,6],[1,2,3,4,5,6]]

Ans : C

若是numpy的陣列, 結果是不一樣的
import numpy as np
a1=np.array([1,2,3])
a2=np.array([4,5,6])
a3=a1+a2
a4=a3*2
print(a3)
print(a4)
--------------------------------
[5 7 9]
[10 14 18]

Q-002

你是運動App的程式設計師. 你必須製作一個函式為跑者計算步速, 所謂步速就是每公里所花的時間就是步速. 
輸出結果必須盡可能精華. 要如何完成程式碼? 回答時, 請在回答區中選擇適當的程式碼片段. 
其中距離轉換為浮點數, 分秒的輸入值都要轉換為整數. 
#步速計算器
distance=(1)(input("請輸入以公尺為單位的行駛距離"))
distance_kms=distance/1000 #轉換為公里
time_minute=(2)(input("請輸入經過分鐘"))
time_sce=(3)(input("請輸入經過秒數"))
time=time_minute*60+time_sec
pace=time / distance_kme
print("步速是 : ", str(pace//60))+ ":" + str((pace%60)))

以上空格分別要填入的函式名為 :
(1) A.int  B.string  C.float
(2) A.int  B.string  C.float
(3) A.int  B.string  C.float

Ans : C A A

Q-003

高年級的老師要製作一份報表來顯示這次考試班上所有學生的平均分數. 報表必需去除平均分數的小數部份. 
你應該使用那二個程式碼片段? 每個正確的答案都提供了一個完整的解決方案. 請選擇二個. 
A. 平均分數 = float(全班總分 // 全班人數)
B. 平均分數 = int(全班總分 // 全班人數)
C. 平均分數 = float(全班總分 ** 全班人數)
D. 平均分數 = (全班總分 // 全班人數)
Ans : B D

Q-004

你正在編寫一個Python程式用來記錄客戶資料並將其儲存在資料庫中. 這個程式處理各式各樣的資料. 
以下的變數宣告後它們的資料類別是?
請將適合的程式碼片段連到正確的回答區
int        arg=12
bool       minor=False
str        name="David"
float      weight = 64.5
           zip="545"
           
Ans : 1->1
      2->2
      3->3, 5
      4->4

Q-005

你正在編寫一個計算使用者出生西元年轉民國年的程式. 該程式詢問使用者的出生西元年份, 
然後輸出使用者的出生民國年份. 你編寫以下程式碼, 其中包含的行號只是做為參考. 
01 year=input("請輸入你出生的西元年份 : ")
02
03 born=eval(year)-1911
04 message ="你出生在民國 "+str(born) + " 年"
05 print(message)
請問以下何者是正確的?
A. 在 01 行中 year 的資料類型是 str
B. 在 03 行中 born 的資料類型是 float
C. 在 04 行中 message的資料類型是 bool?

Ans : A

Q-006

在Python資料類型中的課程中, 你創建以下三個程式碼片段:
#程式碼片段1
x1 = "5"
y1 = "4"
a = x1 + y1

#程式碼片段2
x2 = 10
y2 = 4
b = x2 / y2

#程式碼片段3
x3 = 5.5
y3 =1
c = x3 / y3

你需要評估程式碼片段, 請問下列何者是正確的(複選)
A. 執行程式碥片段 1 後, 變數 a 的資料類型為 str
B. 執行程式碼片段 2 後, 變數 b 的資料類型為 float
C. 執行程式碥片段 3 後, 訬數 c 的資料類型為 int
Ans : A B
A的結果為 "54"

Q-007

在Python程式中我們利用type()查詢每個值的資料類別, 以下的程式執行後出現的資料類別分別是 :
type(+1E10)
type(5.0)
type("True")
type(False)

A. int, int, bool, bool
B. float, float, str, bool
C. int, float, str, bool
D. float, int, str, str
Ans : B

Q-008

你加入了一個電子商務公司成為程式開發部門的實習生. 你的程式中有一個地方要讓使用者提供一個數值. 
即使使用者輸入了小數, 該值也必須轉換為整數來進行計算. 你應該使用那個程式碼片段?
A. totalNums = input("總共有幾筆資料")
B. totalNums = int(input("總共有幾筆資料"))
C. totalNums = str(input("總共有幾筆資料"))
D. totalNums = float(input("總共有幾筆資料"))

Ans : B

Q-009

你設計了一個Python程式用來顯示每個員工每天工作到現在的小時數. 
你需要計算工作時數並顯示訊息. 程式碼如下 :
01 start = input("你今天幾點開始工作 ? ")
02 end = input("現在幾點 ? ")
03
如果要完成這個程式, 在 03 行使用那個程式碼?
A. print("你已經工作了 " + str(int(end) - int(start)) + " 小時!")
B. print("你已經工作了 " + (int(end) - int(start)) + " 小時!")
C. print("你已經工作了 " + str(end - start) + " 小時!")
D. print("你已經工作了 " + int(end - start) + " 小時!")
Ans : A

Q-010

你正在編寫Python程式用於計算一個數學公式. 公式內容為 b 等於 a 加上 5, 然後再平方, 
其中 a 是輸入的值, b 是結果. 你設計了以下的程式碼片段 : 
01 a = eval(input("輸入一個數字 : "))
02 b = 
如何完成 02 行的程式碼?
A. b = (a + 5)**2
B. b = a + 5 ** 2
C. b = a + 5 * 2
D. b = a + (5 **2)
Ans : A

Q-011

你正在開發一個補習班的Python函式來計算折扣, 補習班希望鼓勵小朋友和老年人報名, 
只要是小朋友和老年人報名相關課程就會獲得10%的折扣. 
你編寫以下程碼:
01 def get_discount(kid, senior):
02     discount = 0.1
03
04         discount = 0
05     return discount
你必須完成這個程式碼.
在 03 行中你將加入什麼程式碼?
A. if not(kid or senior):
B. if (not kid) or senior:
C. if not (kid and senior):
D. if (not kid) and senior:
Ans : A

Q-012

你開發一個比較數字的Python程式, 下列何者的值是True?(複選)
A. 0 or 5
B. bool(0)
C. None is None
D. -5 < 0 < 5
Ans : C D

Q-013

計算以下的Python數學運算式
(3 * (1 + 2) ** 2 - 2 ** 2 * 3)
A. 3
B. 13
C. 15
D. 69
Ans : C

Q-014

你編寫了以下的程式碼:
a = 'Test1'
print(a)
b = 'Test2'
a += b
print(a)
print(b)
根據程式碼片段中提供的資訊選擇每個問題的答案選項
1. 第一次 print 後會顯示什麼 ? A.Test1  B.Test1 Test2  C.Test2
2. 第二次 print 後會顯示什麼 ? A.Test1  B.Test1 Test2  C.Test2
3. 第三次 print 後會顯示什麼 ? A.Test1  B.Test1 Test2  C.Test2
Ans : 1.A 
      2.B
      3.C

Q-015

你為公司開發一個Python應用程式, 代碼如下
01 def test(a, b, c, d):
02     value = (a + b) *c -d
03     return value
根據程式碼片段中提供的資訊選擇每個問題的答案選項
1. 運算式的那個部份將第一個進行計算? A.a+b  B.b*c  C. c-d
2. 運算式的那個部份將第二個進行計算? A.加(+)  B.減(-)  C. 乘(*)
3. 那個運算式等於題目函式中的運算式? A.(a+b)*(c-d)  B.(a+(b*c))-d  C. ((a+b)*c)-d

Ans : 1. A
      2. C
      3. C

Q-016

請按先後順序從頭至尾排列這六類運算的正確順序:
加法和減法(+, -)
乘法和除法(*, /)
正數(+), 負數(-)與反位元(not)
括弧
指數(**)
且(and)
A. 加法和減法 -> 乘法和除法 -> 正數, 負數與反位元 -> 括弧 -> 指數 -> 且
B. 括弧 -> 指數 -> 正數,負數與反位元 -> 乘法和除法 -> 加法和減法 -> 且
C. 指數 -> 乘法和除法 -> 正數, 負數與反位元 -> 括弧 -> 且 -> 加法和乘法
D. 乘法和除法 -> 括弧 -> 正數, 負數與反位元 -> 指數 -> 且 -> 加法和減法
Ans : B
print(-2**2) => -4
print((-2)**2) => 4
a=-2
print(a**2) => 4

Q-017

租車公司需要一種方法來決定客戶租用車輛的費用。該費用取決於車輛歸還的時閽。
然而·週四和周日也有特別的費率. 費用結構如下所示:
· 費用是每天100美元。
· 如果車輛在晚上11點後返還,則客戶將被收取額外一天的費用。
· 如果車輛是在星期天租的,那麼客戶即可享受10%的折扣。
· 如果車輛是在星期四租的,那麼客戶即可以享受20%的折扣。
你需要撰寫程式碼去符合違個需求。你要如何完成這段程式碼?
#車輛出租計算機
ontime = input("卓子是在晚上11點前返還的嗎? y或 n"). lower() 
days_rented = int(input("車子出租了幾天?"))
day_rented = input("車子是在星期幾出租?").capitalize()
cost_per_day = 100
if ontime (1)
    days_rented += 1
if day_rented (2)
    total = (days_rented * cost_per_day) * 0.9
elif day_rented (3) 
    total = (days_rented * cost_per_day) * 0.8
else :
    total = days_rented * cost_per_day 
print("車輛的租借費用為 : $", total)
1. A.!="n":   B.=="n"   C. =="y":
2. A. =="Sunday":  B. >="Sunday":   C. is "Sunday" :
3. A. =="Thursday":   B. <="Thursday":   C. is "Thursday":
Ans : 1. B
      2. A
      3. A

Q-018

你設計了一個數學運算的Python程式.程式碼如下:
a = 11
b = 5
何者是下列每個數學運算式的結果?回答時, 請由左方的結果項目連到右方的回答
1         print(a / b)
2         print(a // b)
2.2       print(a % b)
Ans : 1   -> a%b
      2   -> a//b
      2.2 -> a/b

Q-019

你設計了一個比較數字的Python程式,內容如下:
01 nl = eval(input("請輸入第一個數字:"))
02 n2 = eval(input("請輸入第二個數字: "))
03 if nl = n2: 
04     print("這二個數字是相等的")
05 if nl <= n2: 
06     print("數字1 小於 數字2.")
07 if nl > n2: 
08     print("數字1 大於 數字2.")
09 if n2 <> nl: 
10     print("這二個數字是不相同的")
針對下列每個敘述, 如果正確的就選擇Yes. 否則請選擇No
A. 在03行的語法法是不正確的比較. ()Yes ()No
B. 在06行的語法只有 nl 小於 n2 時才會列印出來. ()Yes ()No
C. 在08行的語法只有 nl 大於 n2 時才會列印出來. ()Yes ()No
D. 在09行的語法是不正確的比較. ()Yes ()No

Ans : Yes No Yes Yes

Q-020

在以下的程式碼:
import datetime
d = datetime.datetime(2018, 5, 16)
print('{:%m-%d-%y}'.format(d))
num = 1234567.89
print('{:,.2f}'.format(num))
執行程式後輸出的結果會是什麼? 
()A. 05-16-18 1234567.89 
()B. 05-16-2018 1,234,567.8900 
()C. 05-16-18 1,234,567.89 
()D. May-16-18 1,234,567.89 

Ans : C
%B : May (英文月份)
%m : 05 (數字月份)
%d : 16 (數字日期)
%y : 18 (二位西元年)
%Y : 2018 (四位西元年)

Q-021

老師正在設計一個Python程式, 學生可以使用它來記錄他們考試的平均分數. 
該程式必須允許使用者輸入他們的名字和當前分數. 該程式將輸出使用者名和使用者的平均分數. 
輸出必須符合以下要求:
· 使用者姓名必須是靠左對齊的
· 如果使用者姓名少於20個字元,則必須在右側添加額外的空間
· 平均分數在小數點左方是三位數,小數點右方是二位數。(XXX.XX)
你要如何完成程式碼?回答時,請在回答區中選擇適當的程式碼片段
注意:每個正確的選擇都可獲得一分
name = input("請輸入姓名")
score = count = 0
while (score != -1):
    score = int(input("輸入你的分數 : (輸入 -1 結束程式)"))
    if score ==-1:
        break;
    sum +=score
    count +=1
    average = sum / count
    print("(1), 你的平均分數是 : (2) " % (name, average))
(1) A. %-20i   B. %-20d   C. %-20f   D. %-20s
(2) A. %1.6s   B. %6.2f   C. %6.2d   D. %2.6f
Ans : (1) D
      (2) B

Q-022

你正在設計一個函式以讀取資料檔案並將結果列印為格式化表格.
資料檔案中包含有關蔬菜的資訊. 每個記錄都包含蔬菜的名稱、重量和價格. 你需要列印資料, 
使其看起來像下面的範例:

Potatos   5.4   2.33
Carrots   2.5   1.50
Corns     5.2   5.96
具體地說, 列印輸出必須符合以下要求:

· 蔬菜名稱必須印在 10 個空格範國內並靠左對齊
· 重量必須印在5個空格範圍內並靠右對齊, 小數點最多-個位數
· 價格必須印在7個空格範圍內並右對齊,小數點後最多兩位數
你創建了以下的程式碼. 其中包含的行號只是做為參考。
01 def print_table(file):
02     data = open(file, 'r')
03     for record in data:
04         fields = record.split(",")
05

你應該如何完成05行的程式碼?回答時,請將適合的程式碼片段選項填到正確的位置上。
每涸程式碼片段都可以使用一次, 多次, 或者不使用
囗囗囗囗".format(fields[0], eval(fields[1]), eval(fields[2])))
A. print("    B.{10:0}   C.{5:1f}   D.{7.2f}   E.{2:7.2f}   F.{1:5.1f}   G.{0:10}
Ans : A G F E

Q-023

你正在設計一個電子商務程式,它可以接受自使用者輸入, 並以逗號分隔的格式輸出資料. 
你可以編寫以下程式碼來接受輸入:

product = input("輸入產品名稱 : ")
qty = input("輸入數量 : ")

輸出必須符合以下要求:
· 字串必須括在雙引號內。
· 數字不得用引號或其他字元括起來。
· 每個產品必須用逗號隔開。
你需要完成程式碼以符合要求。你應該使用哪三個程式碼片段?
()A. print('"{0}",{1}'.format(product, qty)) 
()B. print('"' + product + '",' + qty) 
()C. print('"%s", %s' % (product, qty))
()D. print("{0},{1}".format(product, qty))
()E. print(product +',' + qty) 
Ans : A B C

Q-024

你為公司設計 Python 應用程式需要接受來自使用者的輸入並將該資訊列印到螢幕上. 
你的程式碼如下:
01 print("請輸入產品名稱 : ")
02
03 print(product_name)
在 02 行應該編寫哪個程式碼?
()A. product_name = input() 
()B. input (product_name) 
()C. input("product_name") 
()D. name = product_input 

Ans : A

Q-025

輸入姓名及分數, 然後印出平均分數
使用者姓名必須靠左對齊
如果姓名少於20個字, 右側添加額外的空間
平均分數必須有三個位置在小數點的左邊和一個位置在小數點右邊(XXX.x)

score=0
count=0
sum=0
while(score !=-1):
    score=int(input("輸入你的分數:(輸入-1結束程式)"))
    if score ==-1:
        break
    sum+=score
    count +=1
    average =sum/count
    print("%-20s, average :%5.1f" % (name, average))

Ans: %-20s  %5.1f

Q-026

import datetime
d = datetime.datetime(2017, 4, 7)
print('{:%B-%d-%y}'.format(d))
num = 1234567.890
print('{:,.4f}'.format(num))

輸出結果是什麼?
A. April-07-17
   1,234,567.8900
B. 04-07-2017
   1,234,567.8900
C. 2017-April-07
   1,234,567.890
D. 04-07-17
   1234567.89

Ans. A

Q-027

你正在編寫一個函數以讀取資料檔案並將結果列印為格式化表格
資料檔案中包含有關水果的資訊。每個記錄都包含水果的名稱, 重量和價格。
你需要列印資料,使用看起來像下面的範例:
Oranges   5.6    1.33
Apples    2.0    0.54
Grapes   10.2   10.96
具体地說, 列印輸出必須符合以下要求:
水果名稱必須印在10個空格範圍內並靠左對齊
重量必須印在5個空格範圍內並靠右對齊,小數點後最多一個位數
價格必須印在7個空格範圍內並靠右對齊,小數點後最多兩位數
程式碼片段
print("    {10:0}    {5:1f}     {7:2f}
{2:7.2f}   {1:5.1f}  {0:10} 

Ans:
print("    {0:10}   {1:5.1f}   {2:7.2f}    ".format(fields[0], eval(fields[1], eval(field[2])))

字串直接寫位數 :10即可, 預設靠左
{0:>10} : 10個字元,靠右
{0:<10} : 10個字元,靠左
{0:^10} : 10個字元,置中

Q-028

你正在編寫一個計算使用者出生年份的程式. 該程式會詢問使用者的年齡和當前年份, 
然後輸出使用者的出生年份. 你編寫以下的程式碼, 其中的行號只是做為參考.
01 age = input("請輸入你的年齡 : ")
02 year = input ("輸入四位數的年份 : ")
03 born = eval(year) - eval(age)
04 message = "你出生在" + str(born)
05 print(message)
你需要確保程式使用適當的資料類型
那些資料類型被使用了? 根據程式碼片段中提供的資訊, 使用下拉式選單選擇每個問題的答案選項
(1) 在 01 行中age的資料類型是 ?
(2) 在 03 行中born的資料類型是 ?
(3) 在 04 行中message的資料類型是 ?
Ans : (1) str
      (2) int
      (3) str

Q-029

你為你的公司開發一個Python應用程式
你有以下的程式碼, 其中包含的行號只是做為參考
01 def test(a, b, c, d):
02     value = a + b * c - d
03     return value
根據程式碼片段中提供的資訊使用下拉式選單選擇每個問題的答案選項
(1) 運算式的那個部份將第一個進行計算 ?
(2) 運算式的那個部份將第二個進行計算 ?
(3) 那個運算式等於題目函數中的運算式 ?
Ans : (1) b*c
      (2) 加(+)
      (3) (a + (b * c )) - d

Q-030

01 def checkType(value):
02     dataType = type(value)
03     return dataType
04 print(checkType(True))
05 print(checkType(1.0))
06 print(checkType(1))
07print(checkType("True"))

Ans :
04 行 : <class 'bool'>
05 行 : <class 'float'>
06 行 : <class 'int'>
07 行 : <class 'str'>

Q-031

你為學校開發Python應用程式
一個名為colors的串列包含200種顏色, 你需要分割這個串列, 顯示由第二個顏色值開始到最後, 
間隔的顏色值, 應該使用那個代碼
A. colors[1:2]
B. colors[2:2]
C. colors[::2]
D. colors[1::2]

Ans : D

Q-032

Woodgrove Bank必須產生一份報表用來顯示所有客戶每天帳戶的平均餘額. 
報表必須去除餘額的小數部份
那二個是正確的
A. average_balance = float(total_deposites //number_of_customers)
B. average_balance = total_deposites ** number_of_customers
C. average_balance = total_deposites //number_of_customers
D. average_balance = int(total_deposites /number_of_customers)

Ans : C D

Q-033

某工作室鼓勵年輕人和老年人報名, 未成年人和老年人將會獲得10%的折扣
01 def get_discount(minor, senior):
02     discount = 0.1
03
04        discount = 0
05    return discount
下面 03 行應加入那一段代碼
A. if (not minor) and senior:
B. if not (minor or senior):
C. if (not minor) or senior:
D. if not (minor and senior):
Ans : B

Q-034

你正在編寫一個Python程式, 該程式收集客戶資料並將其儲存在資料庫中
這個程式處理各式各樣的資料
你需要確保程式能夠正確地處理資料, 以便能夠正確地儲存在資料庫中.
將資料類型與程式碼片段對應, 回答時, 請將適當的資料類型從左側的列拖動到右側的程式碼片段. 
每種資料類型可以以使用一次, 多次, 或者不使用.
bool    age = 2
float   minor = False
int     name = "Contoso"
str     weight = 123.5
        zip = "81000"
Ans :
age = 2 : int
minor = False : bool
name = "Contoso" : str
weight = 123.5 : float
zip = "81000" : str

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *