python学习笔记 2023.7.3(数据类型)
python中常见的数据类型有六类:数字、字符串、列表、字典、元组、集合、布尔型等。本篇笔记只涉及数字和字符串两种数据类型。
一、字符串
1、字符串的定义
1.字符串通过单引号或双引号定义,两种定义方式的效果相同。
例:
a = 'time'
,其中time即为字符串b = "123"
,其中123即为字符串
2.用三引号可以定义多行字符串
在python中,正常情况下,一条语句只占一行,换行意味着一条语句的结束
例:
clc = '''
卡西欧计算器
型号:fx-82ES
价格:59
'''
2、字符串的一些操作
1.获取字符串中的元素。通过索引可以获取字符串中索引对应位置的元素。
注:索引可以理解为字符串中各字母的位置坐标,该坐标从0开始。
例:定义字符串"123"
,其中1的索引为0,2的索引为1,3的索引为2
例;
a = 123
a[2] = 3
a[0] = 1
[]
内的数字即为索引,若索引值超过了字符串的最大索引值则会出现报错。
2.字符串的切片
通过索引可以实现字符串的切片,语法为:变量名[起始位置的索引:终止位置的索引+1]
例:
a = 'start'
b = a[0:3]
print(b)
上述代码的运行结果为:s t a
3.字符串的连接
通过+
可以实现字符串的连接,例:
a = some
b = time
c = a + b
print(c)
上述代码的运行结果为:sometime
4.字符串的乘法
字符串的乘法即重复输出字符串,例:
a = 'time'
b = a*2
print(b)
结果:timetime
5.判断给定字符是否在字符串中
通过in
和not in
判断字符在或不在字符串中
例:
a = feel
f in a
输出结果:True
3.转义符
字符串中需要换行、回车、退格等无法直接表示的特殊字符时需要转义符,
常用转义符:\n
换行,\r
回车
例:print('some\ntime')
输出结果:
some
time
注:在转义符所在语句前添上r
或R
可以使显示原字符
例:print(r'some\ntime
)
输出结果为:some\ntime
4.字符串格式化
1.通过.format()
可以实现字符串格式化。
例:'大家好,我叫{},今年{}岁'.format("李华","18")
2.通过%实现字符串格式化
符号 | 描述 |
---|---|
%c | 格式化字符极其ASCII码 |
%s | 格式化字符串 |
%d | 格式化整数 |
例:`print (“我叫%s今年%d岁”%(“李华”,19)) | |
注:% 后的括号内的字符按格式化位置的顺序排列 |
5.替换指定的字符串片段
通过replace()方法实现替换指定的字符串片段
例:
a = '12223'
b = a.replace('22','33')
print(b)
输出结果:13323
二、数字
数字的分类在上一篇笔记中已经提过了,在此不再赘述。
1.数字类型转换
- int(x)将x转换为一个整数或将一个字符串形式的整数转换为整型的整数
- float(x)将x转换为一个浮点数或将字符串形式的数字转换为浮点数
- complex(x)将x转换为一个复数,实数部分为x,虚数部分为0,若x本身就是复数则输出结果仍是x,这也是符合complex函数功能的
- str(a)将数值转换为字符串
2.运算
1.算术运算
符号 | 运算 |
---|---|
+ | 加法 |
- | 减法 |
* | 乘法 |
|返回一个浮点数的除法 | |
|返回一个整数的除法 | |
% | 返回两数相除的余数 |
= | 赋值 |
** | 乘方 |
2.比较运算
符号 | 运算 |
---|---|
> | 大于 |
< | 小于 |
== | 等于 |
!= | 不等于 |
>= | 大于等于 |
<= | 小于等于 |
3.数学函数与数学常量
python中内置了一些常见的数学函数,三角函数,随机数函数,以及两个数学常量
- pi:表示圆周率
- e:表示自然对数的底数
三、其他运算
1.逻辑运算
python中的逻辑运算符:
符号 | 意义 |
---|---|
and | 与运算,a and b,如果a,b中有一个布尔值为False,则返回False |
or | 或运算,a or b,如果a,b中有一个布尔值为True,则返回True |
not | 非运算,not a,返回与a的布尔值相反的布尔值 |
2.位运算
位运算指将数值转换为二进制码之后,二进制码的每一位之间运算
python中的位运算符:
符号 | 含义 | 实例(直接使用二进制码) |
---|---|---|
& | 按位与运算,相应位上的两个值都为1,则返回1,否则返回0。(与逻辑运算中的或、与运算相似 | 100&001,返回000 |
| | 按位或运算,有一个值为1,则返回1.(与逻辑或运算相似) | 100|001,返回101 |
^ | 按位异或运算,两对应二进制位相异时结果为1 | 100^001,返回101 |
~ | 按位取反,把每个二进制位取反,即1变0,0变1 | ~100,返回011 |
<< | 左移动运算符,将数的各二进制位全部向左移动若干位,高位溢出,低位补0 | 11110000<<2,返回11000000 |
>> | 右移动运算符,将各二进制位向右移动若干位,高位补0,低位溢出 | 11110000>>2,返回00111100 |
3.运算优先级
python中的运算优先级为(从左到右优先级递减):
**,* \ % \\ , + - , << >>,&, ^,| , 比较运算 ,not,and,or
注:这里并不是完整的运算优先级,完整的还会包括表达式等的运算优先级。