Python基础回顾(上)

简介: Python基础回顾(上)

Python数据类型



基本数据类型


多个变量赋值


Python允许你同时为多个变量赋值。例如:


a = b = c = 1


以上实例,创建一个整型对象,值为1,三个变量被分配到相同的内存空间上。


您也可以为多个对象指定多个变量。例如:


a, b, c = 1, 2, "john"

以上实例,两个整型对象 1 和 2 分别分配给变量 a 和 b,字符串对象 “john” 分配给变量 c。


基本数据类型


  • int(有符号整型)
  • long(长整型,也可以代表八进制和十六进制)
  • float(浮点型)
  • complex(复数)


布尔类型


和Java中的Boolean相似, 所以基本用法也都相同。

a = True
b = False
print(a and b)  # 输出False,逻辑与运算
print(a or b)  # 输出True,逻辑或运算
print(not b)  # 输出True,逻辑非运算
print(3 > 5)  # 输出False,比较运算


标准数据类型


在内存中存储的数据可以有多种类型。


例如,一个人的年龄可以用数字来存储,他的名字可以用字符来存储。


Python 定义了一些标准类型,用于存储各种类型的数据。


Python有五个标准的数据类型:


  • Numbers(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Dictionary(字典)


案例回顾


下面是每种数据类型的基本使用和案例说明:


1.数字类型(Numbers)—–可变

数字类型包括整型(int)、浮点型(float)和复数型(complex)。可以进行常见的数学运算,如加减乘除、幂运算、取模运算等。例如:


a = 5
b = 2.5
c = 3 + 4j
print(a + b)  # 输出7.5,自动将整型转换为浮点型
print(a ** b)  # 输出55.9016994,a的b次幂
print(c.real)  # 输出3,复数的实部
print(c.imag)  # 输出4,复数的虚部


2.字符串类型(String) —–不可变

字符串是一系列字符的序列,可以用单引号或双引号括起来。可以进行字符串拼接、切片、大小写转换等操作。例如:

str1 = 'hello'
str2 = "world"
str3 = str1 + ' ' + str2  # 字符串拼接
print(str3)  # 输出hello world
print(str1[0])  # 输出h,字符串切片
print(str2[-1])  # 输出d,字符串切片
print(str1.upper())  # 输出HELLO,字符串大小写转换


3.列表类型(List)

列表是一种有序的集合,可以包含任意类型的元素。可以进行索引、切片、增删改查等操作。例如

lst = [1, 'hello', 2.5, True]
print(lst[1])  # 输出hello,列表索引
print(lst[-1])  # 输出True,列表索引
print(lst[1:3])  # 输出['hello', 2.5],列表切片
lst.append('world')  # 列表增加元素
print(lst)  # 输出[1, 'hello', 2.5, True, 'world']
lst[0] = 0  # 列表修改元素
print(lst)  # 输出[0, 'hello', 2.5, True, 'world']


5.元组(Tuple)—–不可变

元组是一种有序的集合,与列表类似,**但是元组是不可变的,**即元素的值不能修改。可以进行索引、切片等操作。


tup = (1, 'hello', 2.5, True)
print(tup[1])  # 输出hello,元组索引
print(tup[-1])  # 输出True,元组索引
print(tup[1:3])  # 输出('hello', 2.5),元组切片


6.集合类型—–元素不重复 , 和set集合类似—–不可变

集合是一种无序的不重复元素的集合,可以进行交并补等操作。


set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
print(set1 | set2)  # 输出{1, 2, 3, 4, 5, 6},集合并运算
print(set1 & set2)  # 输出{3, 4},集合交运算
print(set1 - set2)  # 输出{1, 2},集合差运算


7.字典类型

字典是一种无序的键值对集合,可以根据键来访问值。可以进行增删改查等操作。例如:


dict1 = {'name': 'Tom', 'age': 20, 'gender': 'male'}
print(dict1['name'])  # 输出Tom,字典访问值
print(dict1.get('age'))  # 输出20,字典访问值
dict1['age'] = 21  # 字典修改值
print(dict1)  # 输出{'name': 'Tom', 'age': 21, 'gender': 'male'}
dict1['city'] = 'Beijing'  # 字典增加键值对
print(dict1)  # 输出{'name': 'Tom', 'age': 21, 'gender': 'male', 'city': 'Beijing'}


五大数据类型的高级用法


列表类型 (list[] )


内置函数:

image.png


Python包含以下方法:

image.png


set集合类型


集合的创建


# 集合的创建
set1 = set() # 相当于java中的new List...
# 或者
set1 = {12,1,22,31}

集合的添加元素


# 
set1 = {1, 2, 3}
set1.add(4)
print(set1)  # 输出{1, 2, 3, 4}


集合的删除元素

可以使用remove()或discard()方法删除集合中的一个元素,如果元素不存在,则抛出KeyError异常(remove()方法)或不进行任何操作(discard()方法)。


set1 = {1, 2, 3}
set1.remove(2)
print(set1)  # 输出{1, 3}
set1.discard(4)
print(set1)  # 输出{1, 3},元素4不存在,不进行任何操作


集合的运算

可以使用union()、intersection()、difference()、symmetric_difference()等方法进行集合的并、交、差、对称差等运算。


set1 = {1, 2, 3}
set2 = {2, 3, 4}
set3 = set1.union(set2)  # 并集
print(set3)  # 输出{1, 2, 3, 4}
set4 = set1.intersection(set2)  # 交集
print(set4)  # 输出{2, 3}
set5 = set1.difference(set2)  # 差集
print(set5)  # 输出{1}
set6 = set1.symmetric_differ
ence(set2)  # 对称差
print(set6)  # 输出{1, 4}


判断集合之间的关系


可以使用issubset()、issuperset()、isdisjoint()等方法判断集合之间的包含关系。


set1 = {1, 2, 3}
set2 = {2, 3, 4}
print(set1.issubset(set2))  # 输出False,set1不是set2的子集
print(set2.issuperset(set1))  # 输出True,set2是set1的超集
print(set1.isdisjoint(set2))  # 输出False,set1和set2有共同的元素


数字类型


这个就是相当于将简单的数字类型进行了封装, 如果没有了float 和 double之间的区别


数学函数运算


其中python提供了许多数学函数,可以对数字进行各种运算和计算。常用的数学函数包括abs()、round()、min()、max()、pow()等。


x = -2.5
print(abs(x))  # 输出2.5,取绝对值
print(round(x))  # 输出-2,四舍五入
print(min(1, 2, 3))  # 输出1,取最小值
print(max(1, 2, 3))  # 输出3,取最大值
print(pow(2, 3))  # 输出8,即2的3次幂


类型转换


x = 2.5
print(int(x))  # 输出2,将浮点型转换为整型
print(float(2))  # 输出2.0,将整型转换为浮点型
print(complex(2, 3))  # 输出(2+3j),将实数转换为复数


元组类型


创建元组()


tuple1 = tuple()
# 或者
tuple1 = (1, 2, 3)


元组的访问


就是简单的遍历


print(tuple1[0])  # 输出1,第一个元素
print(tuple1[-1])  # 输出3,最后一个元素
print(tuple1[1:3])  # 输出(2, 3),第2个到第3个元素


运算符


可以使用加号+和乘号*来进行元组的拼接和复制操作。

tuple1 = (1, 2, 3)
tuple2 = (4, 5, 6)
tuple3 = tuple1 + tuple2  # 元组拼接
print(tuple3)  # 输出(1, 2, 3, 4, 5, 6)
tuple4 = tuple1 * 3  # 元组复制
print(tuple4)  # 输出(1, 2, 3, 1, 2, 3, 1, 2, 3)


元素统计


可以使用count()方法统计元素在元组中出现的次数,使用index()方法查找元素在元组中的位置。


tuple1 = (1, 2, 3, 2)
print(tuple1.count(2))  # 输出2,元素2出现了2次
print(tuple1.index(3))  # 输出2,元素3在元组中的位置为2


这些方法可以帮助开发者方便地进行元组的操作和处理。由于元组是不可变的,因此在使用元组时需要注意不能对元素进行修改。


元组内置函数


Python元组包含了以下内置函数


image.png


字符串类型


字符串切片

可以使用切片操作来截取字符串的一部分。切片操作的语法为:s[start:end:step],其中start为起始位置(默认为0),end为结束位置(默认为字符串长度),step为步长(默认为1)。


s = 'Hello, world!'
print(s[0:5])  # 输出Hello,取前5个字符
print(s[7:])  # 输出world!,从第7个字符到字符串末尾
print(s[:5])  # 输出Hello,从字符串开头到第5个字符
print(s[-6:])  # 输出world!,取最后6个字符
print(s[::2])  # 输出Hlo ol!, 每隔一个字符取一个


字符串拼接

可以使用加号+来进行字符串的拼接操作。


s1 = 'Hello'
s2 = 'world'
s3 = s1 + ', ' + s2 + '!'
print(s3)  # 输出Hello, world!


字符串查找

可以使用find()、index()、count()等方法来查找字符串中的子串。


s = 'Hello, world!'
print(s.find('world'))  # 输出7,返回子串的起始位置,如果没有找到则返回-1
print(s.index('world'))  # 输出7,返回子串的起始位置,如果没有找到则抛出ValueError异常
print(s.rindex('world')) # 从右边开始索引
print(s.count('o'))  # 输出2,统计子串在字符串中出现的次数


字符串替换

可以使用replace()方法来替换字符串中的子串。


s = 'Hello, world!'
s2 = s.replace('world', 'Python')
print(s2)  # 输出Hello, Python!


字符串分割和连接


可以使用split()方法将字符串按照指定的分隔符进行分割,使用join()方法将字符串列表或元组连接成一个字符串。


s = 'Hello, world!'
lst = s.split(',')  # 将字符串按照逗号分割成列表
print(lst)  # 输出['Hello', ' world!']
s2 = '-'.join(lst)  # 将列表按照横线连接成字符串
print(s2)  # 输出Hello- world!

这些方法可以帮助开发者方便地进行字符串的操作和处理。由于字符串是不可变的,因此在使用字符串时需要注意不能对字符串进行修改。


内置函数


WJ_Z@@A45Q[D`BM~R$QA4LO.png


字典类型


创建字典

可以使用花括号{}或dict()方法创建一个字典:


dict1 = {'name': 'Tom', 'age': 20}
dict2 = dict([('name', 'Jerry'), ('age', 18)])


访问字典元素

可以使用键来访问字典中的值,如果键不存在,则会抛出KeyError异常。也可以使用get()方法来访问字典中的值,如果键不存在,则返回指定的默认值。


dict1 = {'name': 'Tom', 'age': 20}
print(dict1['name'])  # 输出Tom
print(dict1.get('age', 0))  # 输出20
print(dict1.get('gender', 'Unknown'))  # 输出Unknown,键gender不存在,返回指定的默认值
修改字典元素

可以使用赋值语句对字典中的元素进行修改,如果键不存在,则会添加新的键值对。

dict1 = {'name': 'Tom', 'age': 20}
dict1['age'] = 21  # 修改键age的值为21
dict1['gender'] = 'Male'  # 添加新的键值对
print(dict1)  # 输出{'name': 'Tom', 'age': 21, 'gender': 'Male'}


删除字典元素


可以使用del语句或pop()方法删除字典中的元素,如果键不存在,则会抛出KeyError异常(del语句)或返回指定的默认值(pop()方法)。


dict1 = {'name': 'Tom', 'age': 20}
del dict1['age']  # 删除键age
print(dict1)  # 输出{'name': 'Tom'}
age = dict1.pop('age', 0)  # 删除键age,并返回其对应的值,如果键不存在,则返回指定的默认值
print(age)  # 输出0


字典视图


字典视图(dictionary view)是一个动态的“窗口”,可以看到字典中的键和值。Python提供了三种字典视图:keys()方法返回字典中的键视图,values()方法返回字典中的值视图,items()方法返回字典中的键值对视图

dict1 = {'name': 'Tom', 'age': 20}
keys = dict1.keys()  # 返回字典中的键视图
values = dict1.values()  # 返回字典中的值视图
items = dict1.items()  # 返回字典中的键值对视图
print(keys)  # 输出dict_keys(['name', 'age'])
print(values)  # 输出dict_values(['Tom', 20])
print(items)  # 输出dict_items([('name', 'Tom'), ('age', 20)])

这些方法可以帮助开发者方便地进行字典的操作和处理。由于字典是无序的,因此在使用字典时需要注意不能依赖字典中元素的顺序。


内置函数:


image.png


Python字典包含了以下内置方法:


A3}A%$1YP_3`PCFB1_SSMPM.png


字符串的相关内置函数



[LDK$TSN~`(1JKVGMP$R77M.png


字符串格式化


Python 字符串格式化

Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。


在 Python 中,字符串格式化使用与 C 中 sprintf 函数一样的语法。


如下实例:


#!/usr/bin/python
print "My name is %s and weight is %d kg!" % ('Zara', 21)


以上实例输出结果:

My name is Zara and weight is 21 kg!


python 字符串格式化符号:

image.png


image.pngimage.png

格式化操作符辅助指令:

image.png


image.png

三引号

str12 = """
       这是一个晴朗的小凹
       我想牵着你走
       这世上没有什么是
                   一个人
                   -------rayce
   """

image-20230503145249357.png



目录
相关文章
|
2月前
|
自然语言处理 IDE Java
Python基础
Python基础。
27 6
|
6月前
|
JavaScript 前端开发 Java
python基础详解
python基础详解
|
存储 Python
python基础 1
python基础
|
Python
Python基础练习100例-1
hello,这里是Token_w的博客,欢迎各位的阅读点赞评论 今天给大家带来的是Python基础学习的实践检测,基础练习100例,希望对大家有多帮助 整理不易,希望得到您的认可与点赞! 感谢!
61 1
|
Python
Python-练脑系列-02基础数据结构题
Python-练脑系列-02基础数据结构题
60 0
|
Python
Python基础(8)
Python基础(8)
129 0
Python基础(8)
|
Python
Python基础(5)
Python基础(5)
133 0
|
程序员 Python 容器
Day1-Python基础
本篇文章的内容概要:注释、变量和数据类型、占位符
145 0
Day1-Python基础
|
Python
python——基础练习(二)
python——基础练习(二)
131 0
python——基础练习(二)
|
缓存 Java 关系型数据库
Python基础篇
Python基础篇
182 0