2020-11-07
Python語(yǔ)言程序設(shè)計(jì)基礎(chǔ)(第2版)崇天 著 思考題
第3章 基本數(shù)據(jù)類(lèi)型*(僅供參考)*
3.1 既然浮點(diǎn)數(shù)可以表示所有整數(shù)數(shù)值,Python語(yǔ)言為何要同時(shí)提供整數(shù)和浮點(diǎn)數(shù)兩種類(lèi)型?
因?yàn)楦↑c(diǎn)數(shù)類(lèi)型的最長(zhǎng)運(yùn)算結(jié)果可輸出17位數(shù)字,其運(yùn)算精度為2.220e-16,運(yùn)算誤差僅為0.000 000 000 000 000 2,在對(duì)數(shù)據(jù)進(jìn)行高精度科學(xué)計(jì)算是浮點(diǎn)數(shù)類(lèi)型不能準(zhǔn)確的計(jì)算出來(lái)。而整數(shù)類(lèi)型進(jìn)行運(yùn)算能夠輸出完全準(zhǔn)確的結(jié)果。
3.2 Python語(yǔ)言中整數(shù)1010的二進(jìn)制、八進(jìn)制和十六進(jìn)制表示分別是什么?
二進(jìn)制:0b1111110010
八進(jìn)制:0o1762
十六進(jìn)制:0x3f2
3.3 Python語(yǔ)言中-77.的科學(xué)計(jì)數(shù)法表示是什么?4.3e-3的十進(jìn)制表示什么?
-77.的科學(xué)計(jì)數(shù)法表示:-7.7e1 或 -7.7e+1
4.3e-3的十進(jìn)制表示:0.0043
3.4 復(fù)數(shù)2.3e+3-1.34e-3j的實(shí)部和虛部分別是什么?采用什么方法提取一個(gè)復(fù)數(shù)的實(shí)部和虛部?
實(shí)部:2.3e+3
虛部:-1.34e-3
3.5 思考各操作符的優(yōu)先級(jí),計(jì)算下列表達(dá)式。
解:
3.6 請(qǐng)將下列數(shù)學(xué)表達(dá)式用Python程序?qū)懗鰜?lái),并運(yùn)算結(jié)果。
mod 表示取余
3.7 假設(shè)x=1,x*=3+5**2的運(yùn)算結(jié)果是什么?
x = x*(3+5**2)=1*(3+25)=28
3.8 請(qǐng)利用math庫(kù)運(yùn)行下面語(yǔ)句,獲得計(jì)算結(jié)果。
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]))結(jié)果
s1=-2.4492935982947064e-16 s2=2.5 s3=1 s4=2 s5=4.0 s6=1.0 s7=3 s8=1.03.9 請(qǐng)利用math庫(kù)將47°的角轉(zhuǎn)換為弧度值,并將結(jié)果賦予給一個(gè)變量。
3.10 請(qǐng)利用math庫(kù)將π/7的弧度值轉(zhuǎn)換為角度值,并將結(jié)果賦予給一個(gè)變量。
3.11 math庫(kù)有44個(gè)函數(shù),Python計(jì)算生態(tài)有超過(guò)10萬(wàn)個(gè)各類(lèi)函數(shù)庫(kù),思考一下,該怎么學(xué)習(xí)這些函數(shù)庫(kù)呢?
略。。。
3.12 一年365天,初始水平值為1.0,每工作一天水平增加N,不工作時(shí)水平不下降,一周連續(xù)工作4天,請(qǐng)編寫(xiě)程序運(yùn)算結(jié)果并填寫(xiě)下表:
3.13 略
3.14 略
3.15 一年365天,初始水平值為1.0,以每個(gè)月30天計(jì)算,在每個(gè)月月初連續(xù)10天里,每工作一天水平增加N,該月其他時(shí)間工作與否都不增加水平值。請(qǐng)編寫(xiě)程序運(yùn)算結(jié)果并填寫(xiě)下表:
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] = “l(fā)lowor”
s[-2::-1] = “l(fā)rowolleh”
3.17 判斷題:Python中"4"+“5"結(jié)果為"9”
錯(cuò),字符"4"和"5"的拼接,應(yīng)是"45"
3.18 采用微實(shí)例3.1的設(shè)計(jì)思路還能完成哪些常用計(jì)算需要?
實(shí)例3.1 是獲取星期字符串
日期、金額、各種商品的型號(hào)等等
3.19 s=“Python String”,寫(xiě)出下列操作的輸出結(jié)果:
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 下列表達(dá)式錯(cuò)誤的是()。
A.‘a(chǎn)bcd’<‘a(chǎn)d’
B.‘a(chǎn)bc’<‘a(chǎn)bcd’
C."<‘a(chǎn)’
D.‘Hello’>‘hello’
C
3.21 請(qǐng)思考并描述下面Python語(yǔ)句的輸出結(jié)果:
print("{:>15s}:{:<8.2f}".format(“Length”, 23.87501))
在15個(gè)字符長(zhǎng)度里,由右對(duì)齊輸出Length,其余用空格填充;再接著輸出冒號(hào)(:),后面是在8個(gè)字符長(zhǎng)度里,由左對(duì)齊輸出23.87501保留2位小數(shù)長(zhǎng)度的數(shù)23.88
*********Length:23.87*** # 這里將空格換成*3.22 格式化輸出389的二進(jìn)制、八進(jìn)制、十進(jìn)制、和十六進(jìn)制的表達(dá)式。以及對(duì)應(yīng)的Unicode字符。
print("{0}的二進(jìn)制是{0:b}\n""{0}的八進(jìn)制是{0:o}\n""{0}的十進(jìn)制是{0:d}\n""{0}的十六進(jìn)制是{0:x}\n""{0}的Unicode字符是{0:c}\n".format(389)) 389的二進(jìn)制是110000101 389的八進(jìn)制是605 389的十進(jìn)制是389 389的十六進(jìn)制是185 389的Unicode字符是?3.23 格式化輸出0.002 178 對(duì)應(yīng)的科學(xué)表示法形式,保留4位有效位的標(biāo)準(zhǔn)浮點(diǎn)數(shù)形式以及百分形式。
print("科學(xué)表示法:{0:e}\n""標(biāo)準(zhǔn)浮點(diǎn)形式:{0:.4f}\n""百分形式:{0:.4%}".format(0.002178)) 科學(xué)表示法:2.178000e-03 標(biāo)準(zhǔn)浮點(diǎn)形式:0.0022 百分形式:0.2178%3.24 進(jìn)度條反映了軟件的執(zhí)行速度,請(qǐng)思考并給出至少3種提高軟件執(zhí)行速度的方法。
1.減少程序代碼,盡量使用函數(shù),局部變量
2.使用內(nèi)建的字符串,元組,列表,集合,字典等容器。
3.有選擇性的消除屬性訪問(wèn)。如多用 from math import sqrt 而不要直接再程序中多次調(diào)用 math.sqrt(),或直接聲明局部變量。
3.25 str.center()方法的功能是什么?
str.center()方法會(huì)對(duì)原字符串進(jìn)行排版,通過(guò)指定一個(gè)長(zhǎng)度值,將原字符串在該長(zhǎng)度內(nèi)居中。可選的填充字符參數(shù)可以指定填充字符,默認(rèn)情況下以空格為填充字符。如果width大于字符串長(zhǎng)度,則返回一個(gè)新字符串,否則返回原字符串。
str.center(width, fillchar) # width 字符串排版總寬度,整型參數(shù),不可省略的參數(shù) # fillchar 填充字符,字符串參數(shù),可省略的參數(shù),省略時(shí)填充字符為空格符3.26 如果將\r放在print()中字符串的其他部分,會(huì)產(chǎn)生什么效果?
產(chǎn)生的效果是,只會(huì)運(yùn)行顯示print()字符串中\(zhòng)r后面的字符串
總結(jié)
以上是生活随笔為你收集整理的2020-11-07的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 计算机二级C语言操作题怎么做?注意事项(
- 下一篇: 【模型库】六足球形机器人三维模型+urd