Python学习之路(2)——python的数据类型(1)——数字和字符串

Python的标准数据类型(6个)

Python3 中有六个标准的数据类型:

  • Number(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Set(集合)
  • Dictionary(字典)

Python3 的六个标准数据类型中:

  • 不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
  • 可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。

1.数字

Python支持四种不同的数字类型:

  • int(有符号整型[可以代表八进制和十六进制]) 
  • float(浮点型)         支持十进制和科学计数法,只有双精度
  • bool(布尔型)
  • complex(复数)  Python 还支持复数,复数由实数部分和虚数部分构成,可以用 a + bj,或者 complex(a,b) 表示, 复数的          实部 a 和虚部 b 都是浮点型。

数字类型实例:

注意:

<1>  在Python2中是没有布尔型的,它用数字0表示False,用1表示True。到Python3中,把True和False定义成关键字了,但它们的值还是1和0,它们可以和数字相加。

<2>  在Python 3里,只有一种整数类型 int,表示为长整型,且没有大小的限制,受限于内存区域的大小,没有 python2 中的 Long。

<3>  内置的type()函数可以用来查询变量所指的对象类型。

下面两副截图截自菜鸟教程

注意:执行浮点数的运算,结果包含的小数位数可能是不确定的,这样结果的起因是计算机内部表示数字的方式,所有语言都存在这种问题

示例:

运行结果:

数字的处理函数

圆整(四舍六入五取偶):round()

向下取整:math.floor()

向上取整:math.ceil()

舍去小数位:int()

最大值:max()

最小值:min()

乘方:pow(x,y)               等价于x**y

开方:math.sqrt()

进制函数:返回值是字符串

二进制:bin()

八进制:oct()

十六进制:hex()

圆周率:math.pi

自然指数e:math.e

2.字符串

字符串是不可变对象

python3起,字符串是Unicode类型

#python不区分字符和字符串,单引号和双引号均表示字符串
s1='hello'
s2="hello"
print(s1)
print(s2)
#三引号表示字符串内的单引号和双引号不做转义
s3=''''this' is a "string"'''
print(s3)
#加了转义字符
s4='hello \n world'
print(s4)
#不做特殊处理,不再当转义字符,r和R均可以
s5=r'hello \n\t world'
print(s5)
s6=R"c:\hello\nt"
print(s6)

(1)字符串访问

#字符串支持索引访问
s="he llo\nt"
print(s[1])
#字符串是有序字符序列
for i in s:
    print(i)
    print(type(i))
#可迭代
print(list(s))

可以看出空格也是字符串,没有字符类型,单个字符还是字符串类型

(2)修改字符串的大小写

upper()  -----------------字母全部转换成大写,返回新的字符串

lower()   -----------------字母全部转换成小写,返回新的字符串

示例:

运行结果:

其他的了解就行

(3)拼接字符串

<1>连接字符串中每个字符

#成员函数的join方法是将参数字符串中每个字符用调用者字符串连接起来
s='hello'
print('~'.join(s))

l=list(range(5))
print(str(l))
#将列表的符号[和空格都转化成了字符串连接在一起
print("~~".join(str(l)))
#将列表中每个元素转化成字符串连接在一起
print("~~".join(map(str,l)))

#另一种换行表示法
print("\n".join(('a','b')))

l=['1',['1','2'],'3']
#下面的语句报错
print('\n'.join(l))

#print(['a'])等价于print(str(['a']))

<2>python使用“+”来合并字符串

原来的那两个字符串没有变,只是生成了一个新的字符串返回

示例:

运行结果:

(4)使用制表符或换行符来添加空白

制表符:\t               换行符:\n 

示例:

运行结果:

补充:python语句结束说明

  python可以使用但不推荐使用分号结尾,python本身通过换行来识别一条语句的结束,当一条语句很长时,可以在结尾添加 “\\” 来   表示此句未结束,继续写在下一行

(5)删除空白

注意:这种删除只是暂时的,并不改变变量本身

示例:

      

运行结果:

而我们需要修改原变量的值的时候,就需要将新值保存回原变量中

示例:

运行结果:

(6)将非字符串值表示为字符串------str()

示例1:

运行结果1:

python不会将int类型自动转化为字符串,需要我们使用str()进行强制转换,但不会改变原有类型,需要保存回去才能改变原变量的值,同时改变了它的类型

示例2:

运行结果2:

(7)字符串分割

split系:切多刀用split

代码演示: 

#split
#默认以至少一个空白字符分割,\n,\t,练成一片的空白字符算一个
print("abc".split())
print("a b c".split())  #以下三个等价
print("a b c".split(None))
print("a b c".split(sep=None))
#以下是坑,当传入参数为空格时,它不会把连续的空格算一个,
      # 而是一个空格之后后续的空格它都会输出
print("1  2   3 4 5".split(' '))
#当传了参数时,它每遇到一个字符后边为参数就会在后面添加
print('tatat'.split('a'))
#第1个参数表示用来切割的字符,第2个参数表示切割的个数(当不传第二个参数时,默认为最大切割)
print("a,b,c,d,e".split(',',2))
#rsplit从右边切,返回的字符串还是按照原来的顺序返回列表
print("c:/hello/iconfig".rsplit('/',1)[1])     #使用索引来访问列表

partition系:切一刀用partition

#partition切一刀下去将字符串分为两部分,然后中间加分割字符,返回三元组
print("a,b,c,d".partition('c'))
print("a,b,c,d".partition(','))

(8)字符串修改

这里的修改实际是返回了新的字符串

时间复杂度为:O(n)

#参数1:旧的要被替换的字符串  参数2:新的替换字符串   参数3:替换的数量
print("www.baidu.com".replace('w','h'))
print("www.baidu.com".replace('w','h',2))

(9)字符串查找

优先选择find方法

(10)字符串判断

(11)字符串的格式化

 

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值