Python入门(一)

目录

一、Python数据类型

1.字面量

2.注释

3.变量

4.数据类型

[二、 运算符](#二、 运算符)

1.数据类型之间的相互转换

[2 算数运算符](#2 算数运算符)

3、逻辑运算符

[三、判断语句 if](#三、判断语句 if)

四、循环

1、while循环

2、for循环

[2.1 for...else...](#2.1 for...else...)

五、格式化字符串

1.字符串

1.1创建字符串的方式(字符串赋值):

1.2通过input()方法

2.字符串拼接

方式1:使用加号。

[方式2: 使用f ' '](#方式2: 使用f ' ')

3.字符串操作

[3.1 下标](#3.1 下标)

[3.2 切片](#3.2 切片)

4.字符串方法

find():

replace():替换

[split(): 按照指定字符分隔字符串](#split(): 按照指定字符分隔字符串)

大小写转换

去掉字符串空格

判断字符串是否以某个字符串为前缀或后缀

判断某个字符串中是否包含另一个字符串


一、Python数据类型

1.字面量

在计算机科学中,字面量(literal) 是用于表达源代码中一个固定值的表示法(notation

通俗的说就是: 写在代码中的固定的值, 叫做字面量.

常见的字面量类型: 整数, 浮点数, 字符串.

2.注释

在python使用 # 作为对代码的解释, 即注释.

在python中可以使用三引号(""" """) 来作为多行注释. (单的双的都行)

还有todo注释,了解即可

3.变量

在python中定义变量是不需要指定类型的.

变量名称 = 值等号(=) 赋值, 将等号右边的值赋予等号左边的变量.

变量名称即: 变量名, 代表变量本身.

  • 变量的值是可以改变的.

  • 变量是可以重复使用的.

变量名的命名规则: 变量名要起的见名知意

变量名必须以字母或下划线字符开头

变量名称不能以数字开头,但是可以以数字结尾

变量名只能包含字母数字字符和下划线(A-z、0-9 和 _)(约定, 并不是强制.)

变量名称区分大小写(age、Age 和 AGE 是三个不同的变量)
不可使用关键词作为变量名

4.数据类型

|--------------|---------------------------------------|
| 类型 | 说明 |
| 字符串(string) | 描述文本的一种数据类型, 由任意的字符组成 |
| 整型(int) | 整数 如 1, 2, 3, 4... |
| 浮点型(float) | 浮点数, 如 12.34, 3.14 |
| 布尔型(bool) | 即真和假, 在python中True表示真, False表示假, 非0即真 |
| 复数型(complex) | 主要用于科学计算 |
| 列表(list) | 有序的可变的元素序列, 使用最频繁的一种类型 |
| 元组(tuple) | 有序的不可变的元素序列 |
| 集合(set) | 无序的不重复集合 |
| 字典(dict) | 无序的key-value集合 |

以上的数据类型包含的python的所有的数据类型, 后面会详细讲解字符串、列表、字典、元组等类型

那么如何查看数据类型呢?

在python中提供了一个**type()**方法查看数据类型.


二、 运算符

1.数据类型之间的相互转换

函数 说明
int(a) 将a转换为一个整数
float(a) 将a转换为一个浮点数
str(a) 将a转换为一个字符串

PS: 任何类型都可以转换成字符串.

但是不是所有类型都可以转换成int.

int是可以转换为float的.

float也可以转换为int,但是会丢失精度.

2 算数运算符

算数运算符 说明 示例
+ 表示2个元素相加, 可用于字符串的拼接 2+3
* 表示2个元素相乘, 字符串可以和数字相乘 2*3
- 表示2个元素相减 3-2
/ 表示2个元素相除 4 / 2
// 数字之间取整除 9 // 2 = 4
% 数字之间取余数 9 % 2 = 1
** 2**4

PS: 字符串可以和数字相乘:

复制代码
a = '666' * 3
print(a) # 666666666

特别注意的三个赋值运算符

|----|--------|----------------------|
| %= | 取余赋值运算 | a %= b 等效于 a = a % b |

|-------|-------|----------------------------|
| **= | 幂赋值运算 | a **= b 等效于 a = a ** b |

相当于a的b次方

|-----|--------|------------------------|
| //= | 整除赋值运算 | a //= b 等效于 a = a // b |

3、逻辑运算符

|-----|---------|------------------------------------------------------------|-----------------------------------------|
| 运算符 | 逻辑表达式 | 描述 | 实例 |
| and | x and y | 布尔 " 与 " :如果 x 为 False , x and y 返回 False ,否则返回 y 的值 | True and False ,返回 False,有一个假即为假 |
| or | x or y | 布尔 " 或 " :如果 x 是 True ,它返回 True ,否则 返回 y 的值 | True or False, 返回 True-- 有 一个真即为真 |
| not | not x | 布尔 " 非 " :如果 x 为 True ,它返回 False 。如果 x 为 False ,它返回 True 。 | not True ,返回 False , not False ,返回 True |


三、判断语句 if

python 复制代码
if 条件:
   条件成立执行的代码1
   条件成立执行的代码2
   ......
python 复制代码
if True:
   print('条件成立执行的代码1')
   print('条件成立执行的代码2')
# 下方的代码没有缩进到if语句块,所以和if条件无关
print('我是无论条件是否成功,都要执行的代码')
python 复制代码
if 条件:
   条件成立执行的代码1
   条件成立执行的代码2
   ......
else:#隐藏条件
   条件不成立执行的代码1
   条件不成立执行的代码2
   ......
python 复制代码
if 条件1:
   条件成立执行的代码1
   条件成立执行的代码2
   ....
elif 条件2:
   条件成立执行的代码1
   条件成立执行的代码2
   ....
elif 条件3:
   ----
elif 条件4:
   -----
else:   # else写不写都可以 语法上面不强制必须要写else
以上条件都不成立执行的代码

四、循环

1、while循环

python 复制代码
while 条件:
  条件满足时,做的事情 1
  条件满足时,做的事情 2
  条件满足时,做的事情 3
  ...(省略)...

2、for循环

用于 遍历循环

python 复制代码
for 临时变量 in 序列:
   重复执行的代码1
   重复执行的代码2
   ...

str1 = 'testfan'
for i in str1:
   print(i)

2.1 for...else...

python 复制代码
for 临时变量 in 序列:
   重复执行的代码
   ......
else:
   循环正常结束之后要执行的代码

所谓 else 指的就是循环正常结束之后要执行的代码,即如果是 break 终止循环的情况下, else 下方缩进的代码将不会执行


五、格式化字符串

1.字符串

字符串是 Python 中最常用的数据类型. 在python中, 引号之间的字符, 都是字符串.

1.1创建字符串的方式(字符串赋值):

单引号.
双引号.

三引号: 之前在注释的章节, 在python中三引号可以作为多行注释来用, 但是三引号内的本质上还是字符串, 如果使用变量去接受这个三引号的值, 那么这个变量的类型就是str

其中三引号可以用来定义内容有多行的字符串:

letter = '''刘总:

您好!

您简直是个大帅哥

2025年5月6日'''

print(letter)

1.2通过input()方法

在 python 中,使用 input() 接收用户输入。

python 复制代码
username = input('请输入用户名:')
print(type(username))
print(f"您输入的名字是{username}")

2.字符串拼接

方式1:使用加号。

python 复制代码
var1 = '字符串'
var2 = str(1)
print(var1 + var2)
print(type(var1 + var2))

要求:各个变量或者元素必须是字符串类型

经典误区:
print 打印时使用 , (逗号)不是字符串合并
print ( ' 你 ',' 好 ' )

方式2: 使用f ' '

(需要python解释器是3.6之后的版本)

python 复制代码
var = '字符串'
name = f'我是{var}'
print(name)
print(type(name))

3.字符串操作

索引是从 0 开始的整数
正着数0 开始
逆着数-1
数据类型分为可变和不可变数据类型

不可变类型(数字,字符串,元组):不支持原址(内存地址)修改

3.1 下标

python 复制代码
# 取到不同下标对应的数据
name = 'testfan'
print(name[0])   #t
print(name[1])   #e
print(name[2])   #s
#下标也可以写负数
print(name[-1])  #n
print(name[-2])  #a

3.2 切片

切片是指对操作的对象截取其中一部分的操作, 字符串,列表,元组 都支持切片

语法
字符串 [ 开始位置下标 : 结束位置下标 : 步长 ]
注意:
选取的区间属于左闭右开型,即从 " 起始 " 位开始,到 " 结束 " 位的前一位结束(不包含结束位本身 ) ,
如果不写步长默认是 1.
步长是控制方向的,正数从左往右取负数是从右到左取我们以字符串为例讲解

python 复制代码
s="testfun"
print(s[0]) #第一个字符t
print(s[-1]) #最后一个字符 n   -1下表代表最后一个索引
print(s[::1])  #testfun
print(s[::-1]) #nuftset 反转
print(s[1:6:1]) #中间5个 estfu
print(s[-1:-3:-1])#nu

小结:
1.[:] 提取从开头(默认位置 0 )到结尾(默认位置 -1 )的整个字符串
2.[start:] 从 start 提取到结尾
3.[:end] 从开头提取到 end-1
4.[start:end] 从 start 提取到 end-1
5.[::-1] 逆序

4.字符串方法

字符串的常用操作方法有 查找,修改和判断 三大类 .
我们在这先提出最必须背下来的几个方法: find()、replace()、split()

find():

检测某个字符串是否在某个字符串中,如果在,就返回子串开始位置的下标,否则,返回 -1

1.语法
字符串序列 .find ( 子串**,** 开始位置下标**,**结束位置下标 )
注意:开始和结束位置下标可以省略,表示在整个字符串序列当中查找

python 复制代码
s='hello world and testfan and shamo'
#我想找到这个字符串中and单词第一次出现的位置
index=s.find('and')
print(index)      #12
#找到后半段第一次出现and的位置
index=s.find('and',int(len(s)/2),-1)
print(index)     #24
#找到第二次出现and的位置
index=s.rfind('and')
print(index)     #24

print(str.find('ands')) # -1

replace():替换

语法

字符串序列.replace(旧子串,新子串,替换次数)

注意:替换次数如果超出子串出现的次数,则替换次数为该子串出现的次数

python 复制代码
s='hello world and testfan and shamo'
#把and替换成or
s1=s.replace('and','or')   #替换会生成新的字符串,不会直接修改原始字符串
print(s1)
#只替换第一个and
s2=s.replace('and','or',1)  #1代表替换次数 从左往右
print(s2)


注意:数据按照是否能直接修改分为可变类型和 不可变类型两种。字符串类型的数据修改的
时候不能改变原有字符串,属于不能直接修改数据的类型即是不可变类型。

split(): 按照指定字符分隔字符串

语法
字符串序列 . split ( 分割字符, num )
注意: num 表示的是分隔字符出现的次数,即将来返回数据个数为 num+1

python 复制代码
#把字符串拆分成一个个单词
s_list=s.split() #默认按照空格进行分割 得到结果是一个列表
print(s_list)
s='hello*world*and*testfan*and*shamo'
#按照*分割
s_list=s.split('*')
print(s_list)
s_list=s.split('*',3)  #最大分割次数为3
print(s_list)

大小写转换

python 复制代码
s='uP'
s=s.lower()  #转小写
print(s)  #up
s=s.upper()
print(s)  #UP

去掉字符串空格

python 复制代码
s='      刘bobo    '
s1=s.strip()  #去掉空格
print(s1)
s2=s.lstrip() #去掉左边空格
print(s2)
s3=s.rstrip() #去掉右边空格
print(s3)
s='****刘bobo***'
s4=s.strip('*')
print(s4)

判断字符串是否以某个字符串为前缀或后缀

python 复制代码
name='张三三'
print(name.startswith('张')) #判断字符串是否以某个字符串为前缀
#判断后缀
name='张三三_码同学'
print(name.endswith('_码同学'))

判断某个字符串中是否包含另一个字符串

python 复制代码
name='张三三'
print('张' in name)
print('张' not in name)
相关推荐
A旧城以西1 小时前
MySQL----数据库的操作
java·开发语言·数据库·sql·学习·mysql
珹洺2 小时前
C++从入门到实战(十三)C++函数模板与类模板初阶讲解
开发语言·数据结构·c++·算法
LiLiYuan.2 小时前
关于Stream
java·开发语言·windows·python
Green1Leaves2 小时前
从零开始学习人工智能(Python高级教程)Day6-Python3 正则表达式
python·学习·正则表达式
码有余悸2 小时前
初学Python爬虫
python
派阿喵搞电子3 小时前
YOLOv8的Python基础--函数篇
python·yolov8
hongyanwin6 小时前
cmake qt 项目编译(win)
开发语言·qt
元亓亓亓7 小时前
Java后端开发day42--IO流(二)--字符集&字符流
java·开发语言
weixin_472339468 小时前
PyCharm 安装教程
ide·python·pycharm
JANYI20188 小时前
在c++中老是碰到string&,这是什么意思?
开发语言·c++