python一年365天、初始水平值_2020年11月7日,20201107
Python語言程序設計基礎(第2版)崇天 著 思考題
第3章 基本數據類型*(僅供參考)*
3.1
既然浮點數可以表示所有整數數值,Python語言為何要同時提供整數和浮點數兩種類型?
因為浮點數類型的最長運算結果可輸出17位數字,其運算精度為2.220e-16,運算誤差僅為0.000 000 000 000 000 2,在對數據進行高精度科學計算是浮點數類型不能準確的計算出來。而整數類型進行運算能夠輸出完全準確的結果。
3.2
Python語言中整數1010的二進制、八進制和十六進制表示分別是什么?
二進制:0b1111110010
八進制:0o1762
十六進制:0x3f2
a = bin(1010) # 二進制
b = oct(1010) # 八進制
c = hex(1010) # 十六進制
print(a, b, c)
3.3
Python語言中-77.的科學計數法表示是什么?4.3e-3的十進制表示什么?
-77.的科學計數法表示:-7.7e1 或 -7.7e+1
4.3e-3的十進制表示:0.0043
3.4
復數2.3e+3-1.34e-3j的實部和虛部分別是什么?采用什么方法提取一個復數的實部和虛部?
實部:2.3e+3
虛部:-1.34e-3
z = 2.3e+3-1.34e-3j
print(z.real) # 提取實部
print(z.imag) # 提取虛部
2300.0
-0.00134
3.5
思考各操作符的優先級,計算下列表達式。
解:
3.6
請將下列數學表達式用Python程序寫出來,并運算結果。
mod 表示取余
x1 = (pow(2, 4)+7-3*4)/5
x2 = (1+pow(3, 2))*(16 % 7)/7
print("x1={}\nx2={}".format(x1, x2))
x1=2.2
x2=2.857142857142857
3.7
假設x=1,x*=3+5**2的運算結果是什么?
x = x*(3+5**2)=1*(3+25)=28
3.8
請利用math庫運行下面語句,獲得計算結果。
import math
s = list()
s.append(math.sin(2*math.pi)) # (1)
s.append(math.fabs(-2.5)) # (2)
s.append(math.ceil(3.5+math.floor(-2.5))) # (3)
s.append(round(math.fabs(-2.5))) # (4)
s.append(math.sqrt(math.pow(2, 4))) # (5)
s.append(math.log(math.e)) # (6)
s.append(math.gcd(12, 9)) # (7)
s.append(math.fmod(36, 5)) # (8)
for i in range(8):
print("s{}={}".format(i+1, s[i]))
結果
s1=-2.4492935982947064e-16
s2=2.5
s3=1
s4=2
s5=4.0
s6=1.0
s7=3
s8=1.0
3.9
請利用math庫將47°的角轉換為弧度值,并將結果賦予給一個變量。
3.10
請利用math庫將π/7的弧度值轉換為角度值,并將結果賦予給一個變量。
import math
x = math.radians(47)
y = math.degrees(math.pi/7)
print("47°的角轉換為弧度值為:{}\n"
"π/7的弧度值轉換為角度值為:{}".format(x, y))
47°的角轉換為弧度值為:0.8203047484373349
π/7的弧度值轉換為角度值為:25.714285714285715
3.11
math庫有44個函數,Python計算生態有超過10萬個各類函數庫,思考一下,該怎么學習這些函數庫呢?
略。。。
3.12
一年365天,初始水平值為1.0,每工作一天水平增加N,不工作時水平不下降,一周連續工作4天,請編寫程序運算結果并填寫下表:
def day(n):
level = 1.0
for week in range(365):
if week % 7 in [1, 2, 3, 4]:
level *= (1 + n)
return level
for i in range(1, 11):
N = i / 1000
print("N={:.3f}的年終值為{:.3f}".format(N, day(N)))
N=0.001的年終值為1.231
N=0.002的年終值為1.515
N=0.003的年終值為1.865
N=0.004的年終值為2.294
N=0.005的年終值為2.822
N=0.006的年終值為3.470
N=0.007的年終值為4.267
N=0.008的年終值為5.246
N=0.009的年終值為6.447
N=0.010的年終值為7.922
3.13
略
3.14
略
3.15
一年365天,初始水平值為1.0,以每個月30天計算,在每個月月初連續10天里,每工作一天水平增加N,該月其他時間工作與否都不增加水平值。請編寫程序運算結果并填寫下表:
def year(n):
level = 1.0
for month in range(12):
for day in range(1, 31):
if day / 10 <= 1.0:
level *= (1 + n)
return level
for i in range(1, 11):
N = i / 1000
print("N={:.3f}的年終值為{:.3f}".format(N, year(N)))
N=0.001的年終值為1.127
N=0.002的年終值為1.271
N=0.003的年終值為1.433
N=0.004的年終值為1.615
N=0.005的年終值為1.819
N=0.006的年終值為2.050
N=0.007的年終值為2.310
N=0.008的年終值為2.602
N=0.009的年終值為2.930
N=0.010的年終值為3.300
3.16
s=“hello”, t=“world”, s+=t, 則s、s[-1]、s[2:8]、s[-2::-1]分別是多少?
s = s + t
s = “helloworld”
s[-1] = “d”
s[2:8] = “llowor”
s[-2::-1] = “lrowolleh”
3.17
判斷題:Python中"4"+“5"結果為"9”
錯,字符"4"和"5"的拼接,應是"45"
3.18
采用微實例3.1的設計思路還能完成哪些常用計算需要?
實例3.1 是獲取星期字符串
日期、金額、各種商品的型號等等
3.19
s=“Python String”,寫出下列操作的輸出結果:
s = "Python String"
print(s.upper())
print(s.lower())
print(s.find('i'))
print(s.replace('ing', 'gni'))
print(s.split())
PYTHON STRING
python string
10
Python Strgni
['Python', 'String']
3.20
下列表達式錯誤的是()。
A.‘abcd’
B.‘abc’
C."
D.‘Hello’>‘hello’
C
3.21
請思考并描述下面Python語句的輸出結果:
print("{:>15s}:{:<8.2f}".format(“Length”, 23.87501))
在15個字符長度里,由右對齊輸出Length,其余用空格填充;再接著輸出冒號(:),后面是在8個字符長度里,由左對齊輸出23.87501保留2位小數長度的數23.88
*********Length:23.87***
# 這里將空格換成*
3.22
格式化輸出389的二進制、八進制、十進制、和十六進制的表達式。以及對應的Unicode字符。
print("{0}的二進制是{0:b}\n"
"{0}的八進制是{0:o}\n"
"{0}的十進制是{0:d}\n"
"{0}的十六進制是{0:x}\n"
"{0}的Unicode字符是{0:c}\n".format(389))
389的二進制是110000101
389的八進制是605
389的十進制是389
389的十六進制是185
389的Unicode字符是?
3.23
格式化輸出0.002 178 對應的科學表示法形式,保留4位有效位的標準浮點數形式以及百分形式。
print("科學表示法:{0:e}\n"
"標準浮點形式:{0:.4f}\n"
"百分形式:{0:.4%}".format(0.002178))
科學表示法:2.178000e-03
標準浮點形式:0.0022
百分形式:0.2178%
3.24
進度條反映了軟件的執行速度,請思考并給出至少3種提高軟件執行速度的方法。
1.減少程序代碼,盡量使用函數,局部變量
2.使用內建的字符串,元組,列表,集合,字典等容器。
3.有選擇性的消除屬性訪問。如多用 from math import sqrt 而不要直接再程序中多次調用 math.sqrt(),或直接聲明局部變量。
3.25
str.center()方法的功能是什么?
str.center()方法會對原字符串進行排版,通過指定一個長度值,將原字符串在該長度內居中。可選的填充字符參數可以指定填充字符,默認情況下以空格為填充字符。如果width大于字符串長度,則返回一個新字符串,否則返回原字符串。
str.center(width, fillchar)
# width字符串排版總寬度,整型參數,不可省略的參數
# fillchar填充字符,字符串參數,可省略的參數,省略時填充字符為空格符
3.26
如果將\r放在print()中字符串的其他部分,會產生什么效果?
產生的效果是,只會運行顯示print()字符串中\r后面的字符串
總結
以上是生活随笔為你收集整理的python一年365天、初始水平值_2020年11月7日,20201107的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pycharm如何分两页阅读_雅思高分喜
- 下一篇: golang 切片 接口_一日看尽gol