Python的数值类型、布尔类型、字符串类型的总结以及课本P49实训作业

一、数值类型

数值型包括 int(整型)、float(浮点型)和complex(复数型)等。

1. 整型

Python 3.x 支持任意大小的整型数。整型数可以表示成十进制、八进制、十六进制和二进制形式。

①十进制整型常量

>>> print(10 + 2)

12

②八进制整型常量

 >>> print(0o10 + 2)  #其中字母o大小写都可#

10

 ③十六进制整型常量

>>> print(0x10 + 2) #其中字母x大小写都可#

18

④二进制整型常量

>>> print(0b1101 + 100)  #其中字母b大小写都可#

113

 2. 浮点型

①浮点型是一种表达实数的方式,浮点数是浮点型实数。

②浮点型常量就是包含小数的常量,可直接写成带小数点的小数形式、可以使用指数形式。

>>> print(0.3 + 1.21) #小数计算#

1.51

>>> print(1e-6 + 2e-3) #指数计算#

0.002001

 3. 复数型

复数包含实数与虚数。复数可表示成实部 + 虚部 j 形式。

①用complex(a[,b])可创建复数 a+bj 。

②使用“复数 .real”、“复数 .imag” 可以从复数中提取它的实部和虚部。

③使用abs( 复数 )可以用来计算复数的模,使用“复数 .conjugate()”可得到共轭复数。

④支持进行复数之间的加减乘除等运算

>>> x = 3+4j

>>> y= -5+6.2j

>>> print(x.real)

3.0

>>> print(x.imag)

4.0

>>> print(abs(x))

5.0

>>> print(x.conjugate())

(3-4j)

>>> print(x+y)

(-2+10.2j)

 二、布尔型

①布尔值只有两个:真(True)和假(False)。

②布尔运算包括非(not)、与(and)和或(or)。

>>>e1 = 5

>>>e2 = 20

>>> print(bool(e1))

True

>>> print(e1>e2 and e2>e1)

False

>>> print(e2>e1 or e1)

True

>>> print(not e1>e2)

False

>>> print(True + 1)

2

#系统把True当作1#

>>> print(False * 0)

0

#系统把False当作0#

 三、字符串类型

①字符串类型(str):表示一个字符或多个字符的序列。
②特征:字符串类型是不可变的,即不能修改字符串中的单个字符。
③使用方法:可以使用引号(单引号或双引号)将字符或字符序列括起来创建字符串。字符串支持许多操作,如拼接、切片、查找和替换等。

>>>str1 = Python

>>>str2 = 3.12.0

>>>print(str1 + str2)

Python3.12.0

>>>print(str1[2])

t

 四、课本P49实训作业

1.

str1 = input("输入表达式(...)x,x=2,8,16:")
p1 = str1.find("(")
p2 = str1.find(")")
lens = len(str1)
jc = str1.split(")")[1].split(",")
if not(p2>p1 and p2+1<lens):
    print("输入错误")
else:
    es = str1[p1+1:p2]
    for a in jc:
        if a =='2':
            n= bin(int(es))
            x= eval(n)
        elif a=='8':
            n = oct(int(es))
            x = eval(n)
        elif a=='h':
            n = hex(int(es))
            x = eval(n)
            print(es,"对应",a,"进制=",n,"相应的十进制=",x)

2.(1)

import re
info = '''本公司的联系方式:
固定电话:025-8541239x,
移动电话:1385151613x,
QQ:95845696x,
泰州分公司:0523-661231x,'''
print(info)
pattern = re.compile(r'(\d{3,4})-(\d{7,8})')
index = 0
result = pattern.search(info,index)
if result:
    print('匹配内容:',result.group(0),\
          '在',result.start(0),'和',result.end(0),'之间:',result.span(0))
    print('匹配内容:', result.group(1), \
          '在', result.start(0), '和', result.end(0), '之间:', result.span(1))
    print('匹配内容:', result.group(2), \
          '在', result.start(0), '和', result.end(0), '之间:', result.span(2))
    phone = re.findall(r'移动电话:(.*?),', info)[0]
    print('移动电话号码:', phone)

运行结果: 

本公司的联系方式:
固定电话:025-8541239x,
移动电话:1385151613x,
QQ:95845696x,
泰州分公司:0523-661231x,
匹配内容: 025-8541239 在 15 和 26 之间: (15, 26)
匹配内容: 025 在 15 和 26 之间: (15, 18)
匹配内容: 8541239 在 15 和 26 之间: (19, 26)
移动电话号码: 1385151613x

 

 (2)

import re
info = '''本公司的联系方式:
固定电话:025-8541239x,
移动电话:1385151613x,
QQ:95845696x,
泰州分公司:0523-661231x,'''
print(info)
pattern = re.compile(r'(\d{3,4})-(\d{7,8})')
index = 0
result = pattern.search(info,index)
if result:
    print('匹配内容:',result.group(0),\
          '在',result.start(0),'和',result.end(0),'之间:',result.span(0))
    print('匹配内容:', result.group(1), \
          '在', result.start(0), '和', result.end(0), '之间:', result.span(1))
    print('匹配内容:', result.group(2), \
          '在', result.start(0), '和', result.end(0), '之间:', result.span(2))
    x = info.split('固定电话:')[1].split(',')[0]
    print('固定电话:', x)

 运行结果:

本公司的联系方式:
固定电话:025-8541239x,
移动电话:1385151613x,
QQ:95845696x,
泰州分公司:0523-661231x,
匹配内容: 025-8541239 在 15 和 26 之间: (15, 26)
匹配内容: 025 在 15 和 26 之间: (15, 18)
匹配内容: 8541239 在 15 和 26 之间: (19, 26)
固定电话: 025-8541239x

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值