python基础之基本数据类型-字符串

1 基本数据类型

1.1整数和小数

我将整数和小数归于数字类型,小数与整数相加减乘皆为float类型。

1.2布尔值和空值

  • 布尔值一般作为逻辑判断使用,布尔值包括True 和False值。一般True相当于1,False相当于0。
print(1+True)
print(1+False)21
2
1
  • None为空值,只有一个数值即None,也就是没有东西。
    数据类型查看可以使用type函数
print(type(12))
print(type(1.2))
print(type('ask'))
print(type(True))
print(type(None))
<class 'int'>
<class 'float'>
<class 'str'>
<class 'str'>
<class 'bool'>
<class 'NoneType'>

2. 变量

  • 定义
    变量就是存放数据的盒子,我们通过使用变量这个盒子进而调用盒子里面的数据。

  • 变量命名规则

变量名由字母、数字、下划线组成要符合标识符的命名规范。

注意:(1)命名时不能以数字开头;
(2)不能使用关键字
(3)两个对象相等和两个对象是同一个对象是两个概念

2.1变量的运算**

变量的运算就是正常的s四则运算,需要注意的是在运算过程中含有浮点数,那么它返回值就是一个浮点数。

2.2 变量案例**

变量案例1-1
s1 = {'Jerry':'python'}
s2 = copy.deepcopy(s1)
print(s2)
{'Jerry': 'python'}

例子1-1说明了s1和s2是两个不同的对象,但是两个对象是相等的。

变量案例1-2

s1和s2是相等的,但是s1和s2不是同一个对象

import  copy
s1 = {'Jerry':'python'}
s2 = copy.deepcopy(s1)print(id(s1),id(s2))
print(s1==s2)
25388968 25389008
True
变量案例运算1-3
print(1+2)
print(1*2.1)
print(int(1/2.1))
print(1*2.1)
print(1+float(2))
print(1*int(2.1))
3
2.1
0
2.1
3.02

3.字符串

3.1定义

字符串是有数字、字母、下划线组成的一串字符

‘1223’、‘’12wej、‘123_weddww466587’’等

注意:(1)单引号和双引号不能混合使用

 (2)python中用双引号或单引号包裹的内容就是字符串,‘aaa’、‘123456’、’a___’都是字符串。

3.2转义字符

转义字符是一种特殊的字符常量,具有特定的含义(比如通过反斜杠后面跟t、n、’、\、’’等表示制表符、换行符、反斜杠、’、‘’)。转义字符以反斜杠\开头。

在这里插入图片描述

3.3长字符串

长字符串又叫文档字符串,使用三重引号表示一个长字符串’’’ ’’’

注:三重引号可以换行,并且保留字符串的格式

案例 3-1 转义字符**
a = '关关雎鸠,在河之洲,窈窕淑女,君子好逑'
print(a)
关关雎鸠,在河之洲,窈窕淑女,君子好逑
#\n换行输出
a1 ='关关雎鸠,\n在河之洲,\n窈窕淑女,\n君子好逑'
print(a1)
关关雎鸠,
在河之洲,
窈窕淑女,
君子好逑
#\t制表符 空格
a2 ='关关雎鸠,\t在河之洲,\t窈窕淑女,\t君子好逑'
print(a2)
关关雎鸠,        在河之洲,       窈窕淑女,        君子好逑

长字符串格式:
a3 ='''关关雎鸠,
在河之洲,
窈窕淑女,
君子好逑'''
print(a3)
关关雎鸠,
在河之洲,
窈窕淑女,
君子好逑

3.4 格式化字符串

3.4.1 第一种格式化字符串功能: 拼接
s = '我是糖小果'
print(s+',你是我的女朋友')
我是糖小果,你是我的女朋友
3.4.2 第二种格式化字符串: 参数传递
print('aa','bb','haha')
print('s =',s)
aa bb haha
s = 我是糖小果
3.4.3 第三种格式化字符串: 占位符

在这里插入图片描述

3.4.3.1 格式化字符串–案例
%s案例1-1


a = '卖面条小哥哥'
b = 'Anny老师是小糖果的女神'
print('i love %s' %a)
print('i love %s' %'卖面条小哥哥')
print('i love %s,并且%s' %(a,b))
i love 卖面条小哥哥
i love 卖面条小哥哥
i love 卖面条小哥哥,并且Anny老师是小糖果的女神
%s案例1-2
r = 'i love %s'
print(r % '小糖果的女神')
i love 小糖果的女神
%s案例1-3
s = 's =%s,s2 = %s'%('w','n')
print(s)
a = 'anny=%s,Jerry = %s'%('大神班讲师同时是小糖果的女神','小糖果的核心编程老师')
print(a)
s = w,s2 = n
anny=大神班讲师同时是小糖果的女神,Jerry = 小糖果的核心编程老师
3.4.4 第四种格式化字符串:

f ‘{变量}’

str.format() 即:字符串.format()

3.4.4.1 f ‘{变量}’—案例1-1
s1 = '钢铁侠'
s2 = '蜘蛛侠'
a = 'Anny'
b = 'Jeery'
a_1 = f'hello {s1},{s2}'
print(a_1)
print(f'{s1}和{s2}都是我的大侠')
print(f'{a}和{b}都是我的编程老师')
hello 钢铁侠,蜘蛛侠
钢铁侠和蜘蛛侠都是我的大侠
Anny和Jeery都是我的编程老师
str.format()案例2-1
s = 'i like {},{}'
r = s.format('python','java')
print(r)
i like python,java
str.format()案例2-2
f = '我想与{}和{}一起打英雄联盟,冲啊冲啊,啊哈哈哈哈哈哈'
f1 = f.format('Anny','Jeery')
print(f1)
我想与Anny和Jeery一起打英雄联盟,冲啊冲啊,啊哈哈哈哈哈哈
str.format()案例2-3

下标索引传入变量,变量可以比{}的数量少

d1 = '张三{0}岁. {1}岁数更大'
r = d1.format(22,'李四')
print(r)
张三22. 李四岁数更大
d1 = '张三{0}岁. \n{1}岁数更大.\n{2}比{1}岁数更大,\n你们猜{2}比{3}大吗'
r = d1.format(22,'李四','Jerry','糖果')
print(r)
张三22. 
李四岁数更大.
Jerry比李四岁数更大,
你们猜Jerry比糖果大吗

4. 字符串的其他操作

4.1 len()
  • 计算字符串的长度或列表元素个数
list = [1,2,3,4,5,6,]
a = 'asdfghjk'
print(len(list))
print(len(a))
6
8
4.2 max()
  • 计算最大值
list = [1,2,3,4,5,6,]
print(max(list))
6

list = [1,2,3,4,5,6,]

print(max(list))

6

4.3 min()
  • 计算最小值
list = [1,2,3,4,5,6,]
print(min(list))
1
4.4split()
  • 分割字符串
4.4.1 语法
  • str.split(str="", num=string.count(str)).

  • str – 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等

  • num – 分割次数。默认为 -1, 即分隔所有。

4.4.2 描述
  • split() 通过指定分隔符对字符串进行切片,如果参数 num 有指定值,则分隔 num+1 个子字符串

  • 返回分割后的字符串列表

a= 'ahshshehen#hhdhsdhhdh#hhhhh'
print(a.split('#',2))
['ahshshehen', 'hhdhsdhhdh', 'hhhhh']
4.5 join()
  • 拼接字符串
  • 用于将序列中的元素以指定的字符连接生成一个新的字符串。
  • 返回通过指定字符连接序列中元素后生成的新字符串。
  • 语法
    str.join(seq)即使用str的符号,将seq原序列链接

序列必须是字符串,否则报错。

str='英雄'
seq1 = [1,2,3,4]
print(str.join(seq1))
TypeError: sequence item 0: expected str instance, int found
4.5.1 案例
seq = ['1','2','3']
str = '英雄'
print(str.join(seq))
1英雄2英雄3

5 作业

5.1 作业1

  • 实现 521 女神 嫁给我好吗
#方式1
print('女神 嫁给我好吗')
女神 嫁给我好吗
#方式2
a = '女神'
print(f'{a}\n嫁给我好吗')
print(f'{a}\t嫁给我好吗')
女神
嫁给我好吗
女神 嫁给我好吗
#方式3
a = '女神'
b = '嫁给我好吗'
print(f'{a}\t{b}')
女神 嫁给我好吗
#方式4
print('%s'%'女神 嫁给我好吗')
女神 嫁给我好吗

5.2 作业2

  • a,b = 6, 8 我想让a=8 b=6我该怎么办?

第一种方式

print('a=%s\nb=%s'%('8','6'))
a=8
b=6

第二种方式

f1 ='a={}\nb={}'
print(f1.format('8','6'))
a =8
b =6

第三种方式

#下标索引
f2 ='a={0}\nb={2}'
print(f2.format('8','1','6'))
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值