本文继续计算机二级python教程的学习,之前已经学习过了计算机二级python学习教程(1) 、计算机二级python学习教程(2)
3.1 数字类型
数字类型:整数类型、浮点数类型、复数类型。
整数类型:十进制、二进制、八进制和十六进制。
#不同进制的整数之间可以直接运算 > 0x3F2/1010 1.0 > (0x3F2+1010)/0o1762 2.0
浮点数类型:必须带有小数部分,小数部分可以是0,例如1010.0。表示方法有一般表示(只有十进制)和科学计数法。数值范围和小数精度受不同计算机系统的限制,一般认为没有范围限制。有不确定尾数。
#科学计数法 格式:<a>e<b> = a*10的b次方 (或E) > print(1.01e3) 1010.0 > print(-1.01E-3) -0.00101 #浮点数不确定尾数 > 0.1 + 0.2 0.30000000000000004 > 0.1 + 0.2 == 0.3 False #使用round()函数四舍五入 限定保留尾数 去掉不确定尾数 > round(0.1 + 0.2,3) == 0.3 True
复数类型:含有虚数单位(j)的数。可以看作是二元有序实数对(a, b),表示为:a + bj,a是实数部分,简称实部,b是虚数部分,简称虚部。当b为1时,1不能省略,1j表示复数,j表示Python程序中的一个变量。
#获得实数部分 > (1.23e4+5.64e4j).real 12300.0 #获得虚数部分 > (1.23e4+5.64e4j).imag 56400.0 >
3.2 数字类型的运算
9个基本的数值运算操作符:
> 2+5 7 > 2-5 -3 > 2*5 10 > 2/5 0.4 > 2//5 0 > 2%5 2 > 5%2 1 > -5 -5 > +5 5 > 2**5 32
整数和浮点数运算结果为浮点数,整数/整数结果为浮点数,整数或浮点数与复数运算结果为复数。
增强赋值操作符:+=、-=、*=、/=、//=、%=、**=
> x=3 > x**=3 #等价于x = x**3 > print(x) 27
数值运算函数:
#绝对值 > abs(-666) 666 #返回二元组(x//y,x%y),即(整数商,除法余数) > divmod(10,3) (3, 1) #x的y次幂,即x**y > pow(3,3) 27 #x的y次幂%z (模运算与幂运算同时进行 速度更快) > pow(55,1999999,10000) 4375 #四舍五入 > round(6.6) 7 #保留小数尾数四舍五入 > round(3.1415926,3) 3.142 #取最大值 > max(1,2,3,4,5,0.1) 5 #取最小值 > min(1,2,3,4,5,0.1) 0.1
3.3 字符串类型及格式化
单行字符串可以由一对单引号(')或双引号(")作为边界来表示,单引号和双引号作用相同。
多行字符串可以由一对三单引号(''')或三双引号(""")作为边界来表示,两者作用相同。
> print('这是"单行字符串"') 这是"单行字符串" > print("这是'单行字符串'") 这是'单行字符串' >print("""这是'多行字符串'的第一行 这是'多行字符串'的第二行 """) 这是'多行字符串'的第一行 这是'多行字符串'的第二行 >print('''这是"多行字符串"的第一行 这是"多行字符串"的第二行 ''') 这是"多行字符串"的第一行 这是"多行字符串"的第二行
语言转义符: \ 。例如:\n表示换行、\\表示反斜杠、\'表示单引号、\"表示双引号、\t表示制表符(TAB)等。
> print("既需要'单引号'又需要\"双引号\"") 既需要'单引号'又需要"双引号"
字符串的索引:
> "青青子衿,悠悠我心。"[-5] '悠' > s = "青青子衿,悠悠我心。" > s[5] '悠'
字符串的切片:
>"青青子衿,悠悠我心。"[8:4] '' >"青青子衿,悠悠我心。"[:4] '青青子衿' >"青青子衿,悠悠我心。"[5:] '悠悠我心。' >print("青青子衿,悠悠我心。"[5:]) 悠悠我心。
format()方法使用:"包含{ }的字符串模板".format(逗号分隔的参数1,2,3...) 参数从0开始编号,{ }代表槽
> "{}曰:学而时习之,不亦{}。".format("孔子","说乎") '孔子曰:学而时习之,不亦说乎。 > "{1}曰:学而时习之,不亦{0}。".format("说乎","孔子") '孔子曰:学而时习之,不亦说乎。'
format()方法中模板字符串的槽除了包括参数序号,还可以包括格式控制信息。{<参数序号>: <格式控制标记>}
>s = "等级考试" >"{:25}".format(s) #左对齐,默认 '等级考试 ' >"{:^25}".format(s) #居中对齐 ' 等级考试 ' >"{:>25}".format(s) #右对齐 ' 等级考试' >"{:*^25}".format(s) #居中对齐且填充*号 '**********等级考试***********' >"{:+^25}".format(s) #居中对齐且填充+号 '++++++++++等级考试+++++++++++' >"{:十^25}".format(s) #居中对齐且填充汉字“十” '十十十十十十十十十十等级考试十十十十十十十十十十十' >"{:^1}".format(s) #z指定宽度为1,不足变量s的宽度 '等级考试' >"{:.2f}".format(12345.67890) '12345.68' >"{:>25.3f}".format(12345.67890) ' 12345.679' >"{:.5}".format("全国计算机等级考试") '全国计算机' >"{:b},{:c},{:d},{:o},{:x},{:X}".format(425) '110101001,"{:e},{:E},{:f},{:%}".format(3.14) '3.140000e+00,3.140000E+00,3.140000,314.000000%' >"{:.2e},{:.2E},{:.2f},{:.2%}".format(3.14) # 对比输出 '3.14e+00,3.14E+00,3.14,314.00%' #常用的format()方法格式控制信息 >"{:.2f}".format(3.1415926) # 输出小数点后两位 '3.14' >"{:x}".format(1010) # 输出整数的十六机制形式 '3f2' >"{:.5}".format("这是一个很长的字符串") # 输出字符串的前5位 '这是一个很' >"{:-^10}".format("PYTHON") # 居中并填充 '--PYTHON--'
3.4 字符串类型的操作
字符串操作符:
#连接两个字符串x与y > "PHP" + "是世界上最好的语言" 'PHP是世界上最好的语言' #复制n次字符串x > "lws"*3 'lwslwslws' #如果x是s的子串,返回True,否则返回False > name = "lws" > l in name > "l" in name True
字符串处理函数:
#返回字符串x的长度 > len("lws") 3 #返回任意类型x所对应的字符串形式 > str(0x3f) '63' #返回Unicode编码x对应的单字符 > chr(10000) '"和") 21644 #返回整数x对应十六进制数的小写形式字符串 > hex(1010) '0x3f2' #返回整数x对应八进制数的小写形式字符串 > oct(-255) '-0o377'
字符串处理方法:采用<a>.func(x)形式调用。方法仅作用于前导对象<a>
#str.split(sep) 能够根据sep分隔字符串str,分割后的内容以列表类型返回。 > "Python is an excellent language.".split() ['Python', 'is', 'an', 'excellent', 'language.'] > "Python is an excellent language.".split('a') ['Python is ', 'n excellent l', 'ngu', 'ge.'] #str.count(sub)方法返回字符串str中出现sub的次数,sub是一个字符串。 >"Python is an excellent language.".count('a') 3 #str.replace(old, new)方法将字符串str中出现的old字符串替换为new字符串,old和new的长度可以不同。 >"Python is an excellent language.".replace('a', '#') 'Python is #n excellent l#ngu#ge.' >"Python is an excellent language.".replace('Python', 'C') 'C is an excellent language.' str.center(width, fillchar)方法返回长度为width的字符串,其中,str处于新字符串中心位置,两侧新增字符采用fillchar填充,当width小于字符串长度时,返回str。其中,fillchar是单个字符。 >"Python".center(20, "=") '=======Python=======' >"Python".center(2, "=") 'Python'
3.5 类型判断和类型间转换
Python语言提供type(x)函数对变量x进行类型判断,适用于任何数据类型。
n = eval(input('请输入一个数字:')) if type(n) == type(123): print("输入的数字是整数。") elif type(n) == type(11.3): print("输入的数字是浮点数。") else: print("无法判断输入类型。")
通过内置的数字类型转换函数转换:
#浮点数或字符串转换为整数 > int(10.01) 10 #整数或字符串转换为浮点数 > float(10) 10.0 #整数或浮点数转换为字符串 > str(10.0) '10.0'
第三章结束
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。