目浴錄:
實驗二:Python 運算符、內置函數
實驗目的:
- 熟練運用 Python 運算符。
- 熟練運用 Python 內置函數。
實驗內容:
- 編寫程序,輸入任意大的自然數,輸出各位數字之和。
- 編寫程序,輸入兩個集合 setA 和 setB,分別輸出它們的交集、並集和差集 setA-setB。
- 編寫程序,輸入一個自然數,輸出它的二進制、八進制、十六進制表示形式。
1. 輸入任意大的自然數,輸出各位數字之和。
input([prompt]) 接受一個標準輸入數據,返回爲 string 類型,prompt 爲提示信息
map(function, iterable, …) 會根據提供的函數對指定序列做映射。第一個參數 function 以參數序列中的每一個元素調用 function 函數,返回包含每次 function 函數返回值的新列表。
"""
1、編寫程序,輸入任意大的自然數,輸出各位數字之和。
"""
# 方法1
num1=input('請輸入一個數字')
s=0
for each in num1:
s=s+int(each) # 將str轉換成int
print(s)
# 方法2
num = input('請輸入一個數字')
result = sum(map(int, num)) # 映射: map(__func,__iter1) 求和: sum(__iterable)
print('您輸入數字的各位數字之和爲:',result)
2. 輸入兩個集合 setA 和 setB,分別輸出它們的交集、並集和差集 setA-setB。
eval(expression[, globals[, locals]]) eval() 函數用來執行一個字符串表達式,並返回表達式的值。
expression – 表達式。
globals – 變量作用域,全局命名空間,如果被提供,則必須是一個字典對象。
locals – 變量作用域,局部命名空間,如果被提供,可以是任何映射對象。
注意:加上eval(),鍵入的集合{1,2,3}才能被判定爲集合,否則判定爲’{’ ‘}’ ','均會被當成集合的元素
set.intersection(set1, set2 … etc) 方法用於返回兩個或更多集合中都包含的元素,即交集
set.union(set1, set2…) 方法返回兩個集合的並集,即包含了所有集合的元素,重複的元素只會出現一次
set.difference(set) 方法用於返回集合的差集,即返回的集合元素包含在第一個集合中,但不包含在第二個集合(方法的參數)中
"""
2、編寫程序,輸入兩個集合 setA 和 setB,分別輸出它們的交集、並集和差集 setA-setB。
"""
# 方法1
setA = eval(input("請輸入集合A")) # eval() 函數用來執行一個字符串表達式,並返回表達式的值
setB = eval(input("請輸入集合B"))
Intersection = setA.intersection(setB) # intersection():求集合的交集
Union = setA.union(setB) # union():求集合的並集
DifferenceSet = setA.difference(setB) # difference():求集合的差集
print(Intersection)
print(Union)
print(DifferenceSet)
# 方法2
setA = eval(input("請輸入集合A"))
setB = eval(input("請輸入集合B"))
print(setA & setB)
print(setA | setB)
print(setA - setB) # 與數學寫法相同
3. 輸入一個自然數,輸出它的二進制、八進制、十六進制表示形式。
"""
3、編寫程序,輸入一個自然數,輸出它的二進制、八進制、十六進制表示形式。
"""
num = int(input('請輸入一個自然數:'))
print(bin(num)) # bin() 轉換成二進制
print(oct(num)) # oct() 轉換成八進制
print(hex(num)) # hex() 轉換成十六進制