【Python – 基础】基础是一切升华的根本

以下仅做相关知识的简述,更深入的了解和学习,请自行查阅资料或留言。

Python是一种编程语言,可以让您更快地工作,并更有效地集成您的系统。
Python is a programming language that lets you work more quickly and integrate your systems more effectively.

Python中的标识符命名,需要遵守一定的命名规则:

  • 标识符由字符(a ~ z和A ~ Z)、下划线和数字组成,但第一个字符不能是数字。
  • 标识符不能和 Python中的关键字相同。(查看 Python关键字请看以下代码)。
查看Python的关键字
import keyword
print(keyword.kwlist)
  • Python的标识符中不能包含特殊字符(空格、$、%等)

Python中,标识符的字符严格区分大小写。

Python中,以下划线开头结尾的标识符,具有特殊的含义:

  • 以单下划线开头的标识符,表示不能直接访问的类属性,无法通过 from path import *的方式导入。
  • 以双下划线开头的标识符,表示类的私有成员(不严格私有)。
  • 以双下划线开头和结尾的标识符,是某些方法的专用标识符(例如: __init____str__

因此,除非特定场景需要,应避免使用以下划线开头的标识符。

3.1 数字

  • 整数(二进制): 0b101010b100_001
  • 整数(八进制): 0o100o77_77
  • 整数(十进制): 10100_000
  • 整数(十六进制): 0x100xa1b2_c3d4
  • 浮点数: 1.123
  • 复数: 1+1j

为提高数字的可读性, Python3.x允许使用 _作为数字(包括整数和小数)的分隔符。下划线不会影响数字本身的值。

3.2 字符串

字符串是以引号 '或双引号 "包裹起来的任意文本。

字符串中的转义字符: \

  • \n:表示换行符
  • \t\:表示制表符
    等等

如果字符串有多行,可以使用三个引号或双引号,将字符串内容包裹起来。

a = '''
line1
line2
line3
'''

3.3 布尔值

  • True
  • False

3.4 列表

列表是一种有序的数据集合,可以随时添加和删除其中的元素。

创建列表
a = [] # 或 a = list()

向列表末尾中添加元素
a.append("a")

向列表插入元素
a.insert(1, "a")

根据索引获取列表中的数据
a[0] # a[-1]

获取列表的长度
len(a)

列表切片
a[2:10] # a[:] a[:4] a[1:]

删除列表末尾元素
a.pop()
删除给定索引的元素
a.pop(0)

删除指定值的元素(删除第一个匹配到的值)
a,remove("a")

3.5 元组

元组与列表类似,不同之处在于元组的元素不能修改。

注意:元组中仅有一个值时,元素后面要加上 ,

a = (20,) # 注意
b = (1, 2, 3)

访问元组中的元素与列表类似

3.6 集合

集合是用来保存不重复的元素的数据结构,即集合中的元素都是唯一的。

集合只能存储不可变的数据类型,包括数字、元组、字符串;无法存储列表、字典、集合。
集合是无序的,不能通过索引进行访问。

创建集合
a = set()
b = {1, 2, 3}

3.7 字典

字典是一种可变容器模型,且可存储任意类型对象。

字典的键(key)必须是唯一的。
键(key)必须使用不可变类型。

创建字典
a = {} # 或 a = dict()

a["nema"] = "无敌最俊朗"
a["age"] = 18

取值
b = a["age"]

获取所有的键
a.keys()

获取所有的值
a.values()

获取所有的键值对
a.items()
  • 算数运算符:
  • +
  • -
  • *
  • /
  • %
  • **
  • //
  • 比较(关系)运算符
  • ==
  • !=
  • >
  • <
  • >=
  • 赋值运算符
  • =
  • +=
  • -=
  • *=
  • /=
  • %=
  • **=
  • //=
  • 逻辑运算符
  • and
  • or
  • not
  • 位运算符
  • &
  • |
  • ^
  • ~
  • <<
  • >>
  • 成员运算符
  • in
  • not in
  • 身份运算符
  • is
  • is not
  • 运算符优先级
  • ** 指数 (最高)
  • ~ 按位取反
  • + 一元加号 - 一元减号
  • */%取模 //整除
  • + 加法 - 减法
  • >>按位右移 <<按位左移
  • & 按位与
  • ^ 按位异或
  • |按位或
  • <=< code> <code><</code> <code>></code> <code>>=</code> <code>==</code> <code>!=</code> &#x6BD4;&#x8F83;&#x8FD0;&#x7B97;&#x7B26;<!--=<-->
  • = += -= %= *= **= /= //= 赋值运算符
  • is is not 身份运算符
  • in not in 成员运算符
  • not
  • and
  • or 逻辑运算符
if 表达式1:
    代码块
elif 表达式2:
    代码块
else:
    代码块

6.1 while

while 表达式:
    代码块

6.2 for

for item in 可迭代对象:
    表达式

7.1 def 函数

def func_name(param):
    代码块

7.2 lambda 匿名函数

示例
lambda x: x + 1

使用示例
map(lambda x: x + 1, [1, 2, 3, 4, 5])

7.3 高阶函数

  • map
  • map函数接收两个参数,一个是函数名(也可以使用匿名函数),另一个是可迭代对象。
  • 功能是将可迭代对象中的每个值作为函数的参数依次带入函数中执行,然后返回一个迭代器对象。
  • filter
  • 接收参数同 map
  • 功能是对传入的可迭代对象进行过滤,返回满足条件的值(一个迭代器对象)
  • reduce
  • 接收参数同 map
  • 从左到右对一个序列的项累计地应用有两个参数的函数,以此合并序列到一个单一值;返回值是一个值。

mapfilter是内置函数 ,可以直接调用
reduce需要通过 from functolls import reduce导入

reduce 示例
from functools import reduce
sum_value = reduce(lambda x, y: x + y, [1, 2, 3])
6
class ClassName:
    ...

以上是对 Python基础做的一个简要的总结。

函数和类的内容有很多,在应用中可慢慢体会。

Original: https://www.cnblogs.com/CoderChaos/p/16355061.html
Author: CoderChaos
Title: 【Python – 基础】基础是一切升华的根本

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/810289/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 明明的随机数-python

    题目描述 明明生成了NN个1到500之间的随机整数。请你删去其中重复的数字,即相同的数字只保留一个,把其余相同的数去掉,然后再把这些数从小到大排序,按照排好的顺序输出。 数据范围:…

    Python 2023年6月12日
    085
  • 【Python】Scrapy爬虫介绍&&requests爬虫移植到Scrapy爬虫

    【Python】Scrapy爬虫介绍&&re爬虫移植到Scrapy爬虫 Scrapy * Scrapy爬虫框架 – requests和Scrapy对比 …

    Python 2023年10月4日
    039
  • ccc-数据科学库(HM)-day5

    一、pandas学习(接上次) 项目一:电影种类离散以及种类数量的图形绘制(分组) 原始数据展示:代码: import pandas as pd from matplotlib i…

    Python 2023年8月7日
    057
  • pytest系列—conftest.py配置文件

    conftest.py是什么? conftest.py是fixture函数的一个集合,可以理解为公共的提取出来放在一个文件里,然后供其它模块调用。不同于普通被调用的模块,conft…

    Python 2023年9月12日
    080
  • RabbitMQ个人实践

    前言 MQ(Message Queue)就是消息队列,其有点有很多:解耦、异步、削峰等等,本文来聊一下RabbitMQ的一些概念以及使用。 RabbitMq 案例 Springbo…

    Python 2023年10月14日
    055
  • numpy中np.random.seed()的详细用法

    在进行机器学习和深度学习中,我们会经常用到np.random.seed(),利用随机数种子,使得每次生成的随机数相同。 numpy.randn.randn(d0,d1,&#8230…

    Python 2023年8月24日
    071
  • 【Python】网络爬虫

    Original: https://www.cnblogs.com/tuixiulaozhou/p/16732656.htmlAuthor: 退休的老周Title: 【Python…

    Python 2023年6月9日
    080
  • Win11安装Mysql

    posted @2022-06-08 14:49 裹紧我的小棉袄 阅读(17 ) 评论() 编辑 Original: https://www.cnblogs.com/Flashcc…

    Python 2023年6月12日
    081
  • 2021/1/4

    我们用pyarm3.5导入个pygame包一、软件准备1.下载python3.5.1https://www.python.org/downloads/ 2.下载pip的wheel包…

    Python 2023年9月25日
    035
  • kaggle房价预测-回归模型

    目录 1 项目背景 2 初始数据分析 目标值分析 特征与目标值相关性 变量特征相关性 3 数据预处理 目标变量正态分布化 异常值处理 缺失值处理 转换特征 保存训练集和测试集 4 …

    Python 2023年8月30日
    049
  • 【Redis】无中心化集群

    最近染上了新冠,整整在家休息了一周,然后就遇上某些很c蛋的事,更加坚定了我要抓紧学习跳槽的念头,再苟一苟,小不忍则乱大谋~ 1、什么是redis集群 Redis 集群实现了对Red…

    Python 2023年9月30日
    036
  • 2022需求最大的8种编程语言排名

    DevJobsScanner分析了过去16个月(从2021 10月到2023年3月)超过1200万开发人员的工作需求,并选择了明确需要编程语言的工作机会,获得了2022年最流行的八…

    Python 2023年9月26日
    075
  • pytest使用(1)-基础

    python有很多不错的测试框架,比如RobotFramework,Unitest,这里要介绍一下pytest。可以参考,pytest文档因为文档介绍比较多,这里使用简单的几篇帖子…

    Python 2023年9月10日
    071
  • SpringBoot 常用注解的原理和使用

    读取所有jar包下的 /META-INF/spring.factories 并追加到一个 LinkedMultiValueMap 中。每一个url中记录的文件路径如下: file:…

    Python 2023年10月16日
    029
  • [Python+Django]Web图书管理系统毕业设计之数据库及系统实现源码篇

    前排提醒,本文干货超多,为避免消化不良建议配合目录食用本系列博文献给即将毕业的程序猿们,系列文章共三篇,在编写的过程中可以说几乎是参照毕业设计目录样式来进行的. 相关图表和截图也都…

    Python 2023年8月3日
    059
  • python 绘制3D图

    python 绘制3D图 1.散点图 * 代码 输入的数据格式 2.三维表面 surface * 代码 输入的数据格式 scatter + surface图形展示 3. 三维瀑布图…

    Python 2023年8月29日
    063
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球