数字数据类型和字符串

基本数据类型

(今天只聊聊数字数据类型和字符串)

• 数据类型指的就是变量所引用的对象的类型。

1、变量,通过变量指针引用对象,变量指针指向具体对象的内存空间,取对象的值。

2、对象,类型已知,每个对象都包含一个头部信息,头部信息里有类型标识符。

变量名是没有类型的,类型属于对象(因为变量引用对象,所以类型随对象),变量引用什么类型的对象,变量就是什么类型的。细品就有那么一种嫁鸡随鸡,嫁狗随狗的感觉。

比如:a=10,因为10是整数,所以是整数类型(int)

a=10.0,因为10.0是浮点数,所以是浮点型(float)

a=True或者=False,这就是布尔值类型(bool),这个类型只有两个值True,False

布尔值类型(bool)算是整型(int)的子集。


通过这个命令来看,True就是整型数字1,False就是整型数字0。

有个特别的大兄弟需要说一下——None(Nonetype)。它是一个特殊 Python 对象,它只有一个数值就是None 也就是空值。

如果a='hello,python',那么这就是字符串类型了(str)。什么是字符串呢?字符串是由数字、字母、下划线组成的一串字符。在Python中用一对双引号或者一对单引号包裹的内容就是字符串。

那么问题来了,如果在一对双引号或者一对单引号中,我另外需要用到双引号或者单引号,怎么办呢?

可以在一对双引号里用单引号,或者是在一对单引号里用双引号,如:a = "what's you name?";也可以用转义字符,那么问题又来了,什么是转义字符呢?转义字符是一种特殊的字符常量。转义字符以反斜线""开头,后跟一个或几个字符。转义字符具有特定的含义,不同于字符原有的意义,故称“转义”字符。所以上面同样的一句话也可以写成 a = 'what\'s you name?'。常用的转义字符有\n,\t。

上面是用英文的字符串内容举例的,但是咱毕竟是中国人呀,肯定会使用到中文的,尤其是用到中国诗词的时候,它写出来是有格式的,像白居易的《长恨歌》《琵琶行》又长,用一般的一对双引号或者一对单引号就显得很麻烦,每一句后面都要加换行符,没有效率。这个时候长字符串就应运而生了,那什么是长字符串呢?长字符串又叫做文档字符串,我们使用三重引号来表示一个长字符串’’’ ‘’’,三重引号可以换行,并且会保留字符串中的格式。如:

a = '''

昔人已乘黄鹤去,此地空余黄鹤楼。

黄鹤一去不复返,白云千载空悠悠。

晴川历历汉阳树,芳草萋萋鹦鹉洲。

日暮乡关何处是?烟波江上使人愁。

'''

print(a)

这样打印出来的效率就是杠杠的。

除了上面说的,字符串还有一些好玩的地方,比如格式化字符串。介绍四种格式化字符串的方法。

第一种:拼串

print('你好,' + 'Leslie')

第二种:参数传递

a = '你好,'

b = 'Leslie'

print(a + b)

第三种:占位符

c = '特朗普,%s%d%s' % ('每天骂你',3000,'次')

print(c)

其中: %s是字符串占位;%f是浮点数占位;%d是整数占位

第四种:f'{变量}'或者str.format()

d = '特朗普'

print(f'去你大爷的,{d}')

# 下面的写法也是一样的

print('去你大爷的,{}'.format(d))

除了格式化字符串,字符串还有一些其他的操作。如:

• max() 最大值

• min() 最小值


• len() 字符串的长度

• split()分割字符串

• join()拼接字符串

•find()查找字符串

• replace() 替换字符串

• partition() 把字符串分割为三部分

去空格

• s.strip() 左右两边去空格

• s.lstrip() 去左边空格

• s.rstrip() 去右边空格

字符串大小写

• s.upper() 全部大写

• s.lower() 全部小写

• s.isupper() 判断是不是大写

• s.islower() 判断是不是小写


运行结果如下:


自己动手敲一下,再和我这边对应一下,你就会了然于胸。看一百遍,不如自己动手敲一遍。

既然都开始动手敲了,就再做两道练习。

练习

1、a,b = 6, 8 我想让a=8 b=6我该怎么办?用2种方式实现

第一种方法:

a , b = 6 , 8

a , b= 8 ,6

print(a,b)

第二种方法:

a , b = 6 , 8

a , b= b ,a

print(a,b)

在这个代码里,是从上往下执行,所以a,b变量的值是看最后执行的赋值

2、设计一个程序,要求只能输入长度低于31的字符串,否则提示用户重新输入,打印出字符串长度,使用切片逆序打印出字符串。


3、要求从键盘输入用户名和密码,校验格式是否符合规则,如果不符合,打印出不符合的原因,并提示重新输入。要求为:用户名长度6-20,用户名必须以字母开头;密码长度至少6位,不能为纯数字,不能有空格。


©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。