Python基础语法、内建数据结构列表、元组、字典、集合的讲解及应用(附源码 超详细必看)

简介: Python基础语法、内建数据结构列表、元组、字典、集合的讲解及应用(附源码 超详细必看)

需要完整PPT请点赞关注收藏后评论区留言并且私信~~~

一、Python基础语法

Python是一个结合了解释性、编译性、互动性和面向对象的高级程序设计语言。其结构简单,语法定义清晰。Python最具特色的就是使用缩进来表示代码块,不需要使用大括号{}。

Python3 中有六种标准的数据类型:Number(数字)、String(字符串)、List(列表)、Tuple(元组)、Set(集合)和Dictionary(字典)。其中,不可变数据类型有Number、String和Tuple;可变数据类型有List、Dictionary和Set。

Python中的变量是不需要声明数据类型的,变量的“类型”是所指的内存中被赋值对象的类型。同一变量可以反复赋值,而且可以是不同类型的变量

变量赋值实例如下

brower, count, addsum = 'Google', 100, 123.45
print(brower, count, addsum)

运算符和表达式

运算符用于执行程序代码运算,会针对一个以上的操作数进行运算。Python语言支持算术运算符、关系运算符和逻辑运算符。

各类运算符的优先级顺序为:逻辑运算符<关系运算符<算数运算符

字符串

转义字符

字符串被定义为引号之间的字符集合,在Python中,字符串用单引号('), 双引号("), 三引号(''')括起来。当Python字符串中有一个反斜杠时表示一个转义序列的开始,称反斜杠为转义符。

\n 换行

\" 双引号

\\ 反斜杠

\t 制表符

Python允许用r+""的方式表示""内部字符串不转义

print("python\nprogram")
print(r"python\nprogram")

字符串的运算

Python特有的索引规则为:第一个字符的索引是0,后续字符索引依次递增,或者从右向左编号,最后一个字符的索引号为-1,前面的字符依次减1,主要运算  +  *  切片。

+ 连接操作

* 重复操作

[] 索引

[:] 切片

流程控制

1:条件语句

条件机构又称为选择结构 根据判断条件 程序选择执行特定的代码

compound = input("请输入化学分子式:")
if compound == "H2O":
    print("water")
elif compound == "NH3":
    print("ammonia")
elif compound == "CH4":
    print("methone")
else:
    print("no exist")

2:循环语句

循环结构是指满足一定的条件下,重复执行特定代码块的一种编码结构

sum=0
i = 1
while i<6:
    sum = sum+i
    i = i+1
print("sum is %d." %sum)

下面的代码将数组中的奇数变成它的平方 偶数保持不变

x = [ 1,2,3,4,8,7, 22,33, 88]
print("原数据:",x)
for i in range(len(x)):
    if(x[i] % 2) !=0:   # 判读第 i 个元素是否为奇数
        x[i] = x[i] * x[i]
print("处理后:",x)

函数

函数是对程序逻辑进行过程化和结构化的一种方法。有了函数,可将大块的代码巧妙合理地隔离成容易管理和维护的小块。

函数定义语法格式如下所示: def  function_name(arguments): function_block

Python使用lambda来创建匿名函数

下面定义函数计算阶乘

def fac(n):
    s=1;
    for i in range(2,n+1):
        s=s*i
    return s
n=5
print('%d!=%d'%(n,fac(n)))

定义一个lambda函数计算多项式1+2x+y2+zy的值

polynominal = lambda x,y,z: 1+2*x+y**2+z*y
polynominal(1,2,3)

二、内建数据结构

在Python中,最基本的数据结构是序列。序列中的成员有序排列,可以通过下标偏移量访问到它的一个或几个成员。除了前面已经介绍过的字符串,最常见的序列是列表和元组。

列表是Python中最具灵活性的有序集合对象类型。和字符串不同的是,列表具有可变长度、异构以及任意嵌套列表的特点。列表是可变对象,支持在原处修改。

1:列表

列表的常用方法

(1)增加元素  L.append(v)

(2)查找给定的元素  L.index(x)

(3)删除列表中的元素  L.remove(v)

(4)列表元素倒排、统计和排序   L.reverse()用以倒排列表中的元素,L.count(x)实现返回x在列表中出现的次数。

list = ['a', 'b', 'c', 'd']
list.append('Baidu')
print ("追加后的列表 : ", list)
list.insert(1, 'Google')
print ("插入元素后的列表 : ", list)

查找给定的元素 返回索引

list = ['a', 'b', 'c', 'd']
print ('b索引值为', list.index('b'))

删除第一次找到的数值

list = ['a', 'b', 'c', 'd']
list. remove('d')
print ("列表现在为 : ", list)
p=list. pop()
print ("删除 %r 后的列表为 %r : " % (p, list))
print ("删除元素为 : ", list.pop(1))

列表元素倒排、统计和排序

List = ['a', 'b', 'c','a', 'd','a','c']
List.reverse()
print('倒排后的List:',List)
print ('c的出现次数是:', List.count('c'))
List.sort(reverse=True)
List

列表推导式

列表推导式提供了从序列创建列表的简单途径。通常应用程序将一些操作应用于某个推导序列的每个元素,用其获得的结果作为生成新列表的元素,或者根据确定的判定条件创建子序列。

vec = [2, 4, 6, 8, 10]
print([3*x for x in vec])
vec = [2, 4, 6,8,10]
print([3*x  for  x  in  vec  if x > 6])
vec1 = [2, 4, 6]
vec2 = [4, 3, -9]
print([x*y for x in vec1 for y in vec2 if x*y>0])

2:元组

元组  元组有很多用途,例如,坐标(x, y),数据库中的员工记录等等。元组和字符串一样,不可改变,即不能给元组的一个独立的元素赋值。元组和列表看起来不同的一点是元组用的是圆括号(),而列表用的是方括号[]。

tup = tuple('bar')  #创建元组
print('输出元组tup:',tup)  #输出元组
nested_tup = (4,5,6),(7,8)
print('输出元组tup:',nested_tup)  #元素是元组的元组
print('元组的连接',tup+tuple('wwy'))
a,b,c = tup  #元组的拆分
print(a,b,c)
print(tup.count(a)) # 统计某个数值在元组中出现的次数

3:字典

字典也称映射,是一个由键/值对组成的非排序可变集合体。键值对在字典中以下面的方式标记:

dict = {key1 : value1, key2 : value2 }

scientists = {'Newton' : 1642, 'Darwin' : 1809, 'Turing' : 1912}
print('keys:', scientists.keys())  #返回字典中的所有键
print('values:', scientists.values()) #返回字典中的所有值
print('items:', scientists.items()) #返回所有键值对
print('get:', scientists.get('Curie', 1867))  # get方法
temp = {'Curie' : 1867, 'Hopper' : 1906, 'Franklin' : 1920}
scientists.update(temp)  #用字典temp更新字典scientists
print('after update:', scientists)
scientists.clear() # 清空字典
print('after clear:', scientists)

4:集合

集合是一个由唯一元素组成的非排序集合体。也就是说,集合中的元素没有特定顺序,也没有重复项。集合可以使用大括号{ }或者set()函数创建集合,但是,创建一个空集合必须用 set(),因为{ }是用来创建一个空字典。

set1 = set([0,1,2,3,4])
set2 = set([1,3,5,7,9])
print(set1.issubset(set2))
print(set1.union(set2))
print(set2.difference(set1))
print(set1.issubset(set2))

创作不易 觉得有帮助请点赞关注收藏~~~

相关文章
|
8天前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
22 14
|
10天前
|
数据挖掘 大数据 数据处理
python--列表list切分(超详细)
通过这些思维导图和分析说明表,您可以更直观地理解Python列表切分的概念、用法和实际应用。希望本文能帮助您更高效地使用Python进行数据处理和分析。
27 10
|
27天前
|
数据处理 开发者 Python
Python中的列表推导式:简洁高效的数据处理
在编程世界中,效率和可读性是代码的两大支柱。Python语言以其独特的简洁性和强大的表达力,为开发者提供了众多优雅的解决方案,其中列表推导式便是一个闪耀的例子。本文将深入探讨列表推导式的使用场景、语法结构及其背后的执行逻辑,带你领略这一特性的魅力所在。
|
15天前
|
人工智能 数据可视化 数据挖掘
探索Python编程:从基础到高级
在这篇文章中,我们将一起深入探索Python编程的世界。无论你是初学者还是有经验的程序员,都可以从中获得新的知识和技能。我们将从Python的基础语法开始,然后逐步过渡到更复杂的主题,如面向对象编程、异常处理和模块使用。最后,我们将通过一些实际的代码示例,来展示如何应用这些知识解决实际问题。让我们一起开启Python编程的旅程吧!
|
14天前
|
存储 数据采集 人工智能
Python编程入门:从零基础到实战应用
本文是一篇面向初学者的Python编程教程,旨在帮助读者从零开始学习Python编程语言。文章首先介绍了Python的基本概念和特点,然后通过一个简单的例子展示了如何编写Python代码。接下来,文章详细介绍了Python的数据类型、变量、运算符、控制结构、函数等基本语法知识。最后,文章通过一个实战项目——制作一个简单的计算器程序,帮助读者巩固所学知识并提高编程技能。
|
2天前
|
Unix Linux 程序员
[oeasy]python053_学编程为什么从hello_world_开始
视频介绍了“Hello World”程序的由来及其在编程中的重要性。从贝尔实验室诞生的Unix系统和C语言说起,讲述了“Hello World”作为经典示例的起源和流传过程。文章还探讨了C语言对其他编程语言的影响,以及它在系统编程中的地位。最后总结了“Hello World”、print、小括号和双引号等编程概念的来源。
96 80
|
20天前
|
存储 索引 Python
Python编程数据结构的深入理解
深入理解 Python 中的数据结构是提高编程能力的重要途径。通过合理选择和使用数据结构,可以提高程序的效率和质量
133 59
|
14天前
|
小程序 开发者 Python
探索Python编程:从基础到实战
本文将引导你走进Python编程的世界,从基础语法开始,逐步深入到实战项目。我们将一起探讨如何在编程中发挥创意,解决问题,并分享一些实用的技巧和心得。无论你是编程新手还是有一定经验的开发者,这篇文章都将为你提供有价值的参考。让我们一起开启Python编程的探索之旅吧!
40 10
|
17天前
|
机器学习/深度学习 人工智能 Java
Python 语言:强大、灵活与高效的编程之选
本文全面介绍了 Python 编程语言,涵盖其历史、特点、应用领域及核心概念。从 1989 年由 Guido van Rossum 创立至今,Python 凭借简洁的语法和强大的功能,成为数据科学、AI、Web 开发等领域的首选语言。文章还详细探讨了 Python 的语法基础、数据结构、面向对象编程等内容,旨在帮助读者深入了解并有效利用 Python 进行编程。
|
16天前
|
机器学习/深度学习 人工智能 数据挖掘
探索Python编程的奥秘
在数字世界的海洋中,Python如同一艘灵活的帆船,引领着无数探险者穿梭于数据的波涛之中。本文将带你领略Python编程的魅力,从基础语法到实际应用,一步步揭开Python的神秘面纱。
36 12