python基础知识整理

Python基础知识大全(适用于全面复习Python语法知识) Python基础知识大全(适用于全面复习基本语法知识) 阅读详情
学习python的使用方法,根据个人习惯,随手整理学习过程中关注的知识点,基础入门知识如下:
一、数据类型
1、基本数据类型
整数, 长整数(长整数,在数据后面加上L) 浮点数, 复数,布尔值,字符,字符串,unicode字符串,列表list,元组tuple、字典(dict);
而在定义时,无需声明变量的类型,直接变量名=值即可,引用变量时也只需采用变量名即可。
关于列表和元组:列表可变,而元组不可变;
字符串不可变化,但可以连接处理,注意python的内存处理,内存只需使用,而申请释放由解释器完成的,类似每个内存使用都有引用记录,无引用时才清除。例如:a='abc';b='def';
a +=b #a将指向'abcdef',但'def'只有一个内存块
del a;b#b不受影响,删除的只是变量名,内存内容解释器维护
r关键字与s差别 raw string模式下'\'表示反斜杠本身字符而不是作为转义字符使用;
global绑定全局变量;
作为面向对象的处理方式,可以自定义类的处理方式;
2、类
a、类的创建方式:
__metaclass__ = type #确定使用新式类
class Person(object):
def function(self):
....
self.引用类变量
定义私有方法,在函数前加上双下划线;前后都有下划线系统使用?
class A(object):也可以用来表示新式类
构造函数__init__(self)
析构函数__del__一般不要调用
b、如何指定超类: //支持多重继承
class A:
class B(A):可以在子类中重新写同名函数
调用父类函数: super(当前类名).__init__
实例化类:S = B();
class C(A,B): 多重继承
d、静态方法和类成语
静态方法没有self参数,能够被类直接调用;类成员方法可以直接用类的具体对象使用,类成员方法带cls参数;
def function(cls):
....
function = classmethod(function)
...
function = staticmethod(function)
装饰器,在def fun前使用
@classmethod
@staticmethod
3、注意引用对象的操作
注意区分:新建一个拷贝对象,和指向同一对象的处理不同
list对象为例:
a=['abc','def']
b=a
del b[1]
输出a,a的内容为['abc']
而若:
b=a[:]; del b[1]
输出a,则a的内容没有任何变化
二、运算和判断符
+、-、*、/、%、+=、/=、*=、%=、<<、>>、&、|、^、~、<、>、<=、>=、==、!=、not、and、or、//--整除取整数部分
in、not in成员测试
is、is not 统一性测试
**乘方
Lambda表达式...lambda x: x*x
连接比较: <=...<=
三、程序语句
1、函数定义:
def function(pa):
代码块
return 结果
文档字符串:在def语句后写上的字符串,作为函数的一部分进行存储;
函数接收元组或字典时特殊方法分别使用* **为前缀,当使用*时多余参数作为元组,而使用**则作为键/值对;
关于语句块:python中的语句块通过空格对齐来确定,空语句块需要使用pass;
2、顺序语句:
单行一条语句则无需分号;若果多条语句之间需用分号隔开;
序列赋值: x,y,z = 1,2,3
链式赋值: x = y =..
3、条件语句:
if condition1:
语句块
elsif condition2:
语句块
else:
语句块
4、循环:
while condition:
for number in numbers:
for key in d:
循环控制:break continue
5、断言:
assert condition, 'information'
四、包及模块的引用
模块化的好处是让代码可重用;
自定义模块:modulename.py 文件名即为模块名;
各类语言都有自己包含文件的方式,如c/c++中include,perl中的require,在python中使用的关键字为import;
import modulename 第一导入其中的程序会执行 /程序的执行,多次倒入和导入一次效果相同;
从模块中导入函数
import somemodule 模块引入
from somemodule import somefunction
from somemodule import *
from somemodule import , anotherfunction, yetanotherfunction
当不同模块具有相同名字的函数时,可以使用的引用方式:
module1.function() module2.function
模块引入别名
import module1 as mymodule
mymodule.function)
frome module1 import function as myfunction
直接访问: myfunction()即可
关于模块路径:
import sys
sys.path.append('自己定义的模块文件路径')
print sys.path#查看相应信息
模块文件中使用变量__name__
在作为程序运行时__name__值为'__main__',作为模块导入时,该变量名为模块名,可以用于区分调试或模块导入场景;
包:模块的集合,文件所在的目录(文件夹名),目录下需要包含__init__.py
__init__.py中的变量使用
import 包名 包名.变量名即可得到__init__.py中定义的变量值;
import 包名 后则__init__中的内容可用;
import 包名.模块名,才能引用相应模块内容
from 包名 import 模块名
import 模块包
几类关键字:
__all__ 属性:可以指定 from 模块 import * 方式 导入的函数变量,如果未指定__all__,则默认导入模块中不以下划线开始的全局文件;
__doc__属性:文档字符串,帮助help(...)返回文档字符串+函数名等相关信息;
__file__属性:print 模块名.__file__可以查看模块文件目录
dir(模块)可以显示模块内的属性及方法;
五、简单的输入输出
终端输入输出:
--print、input、raw_input
文件的输入输出:
获取文件指针:
--f = open(filename,mode,buffering);
读入文件内容:
--第三个参数 0表示无缓冲,1 内存缓冲,只有flush和close时才会更新硬盘数据,效率更高;
--mode: r w a b +
--f.read(4)字节大小
--readline() readline(number)
--for char in f.read():
--for line in f.readlines():
--for line in fileinput.input(filename):
--for line in open(filename):
--for line in sys.stdin
文件的写入:
--f.write('')
文件指针关闭:
--f.close();
字符串格式化
使用%来操作,同时%可以作为模运算
format = "%s %s"
values = ('a','b')
print format % values
%s称为转换说明符如果要使用%%则使用%%方式%.nf=>保留n位小数点位数;
-表示左对齐,+表示在数值前加上+/-号0表示位数不够用;可以设置最小字段宽度,如果是*,则宽度从元组中读出;.后如果是*则精度会从元组中读出。
%后的元组需要加括号;
转换类型有哪些:
d,i: 带符号的十进制数
o:不带符号十进制数
u:不带符号十进制数
x X:不带符号十进制数
e E:科学计数法表示浮点数
f F:浮点数
g G如果指数大于-4或者小于精度值和e/E相同,其他和f/F相同
c 字符
r repr转换的对象
s str转换的对象
六、python脚本文件的开头
#!/usr/bin/Python
--指示脚本类型,系统根据#!开头后的内容来确定运行脚本的解释器路径
# -*- coding: utf-8 -*-
--指定文件的编码格式
单引号/双引号类似,三引号可以指示多行字符串,放置在文件头作为模块的__doc__属性值(文档字符串);
备注:
print在python3.0前是一语句,而在3.0中变更为函数调用,所以在3.0使用print,必须使用print()带括号的形式;
exec 执行str作为python的语句 eval用来计算字符串中python的表达式;
repr()用来取得对象的规范字符串表示方式;
换行格式可以存在多种('\r' '\n' '\r\n'),os.linesep()设置换行格式;
Python基础知识整理笔记 文本书写 .title()首写字母大写 .upper()全部大写 .lower()全部小写 \n空格 \t换行 列表元素处理 .lstrip()清除字符串开头的空白 .rstrip()清除字符串结尾的空白 .strip()清除字符串所有多余的空白 ** 两个乘号代表乘方运算 str()字符串 []列 print(变量[0])第一个元素 print(变量[-1])访问列表最后一个元素 以此类推 .... 阅读详情

相关推荐

面试中常被问到的python基础知识整理

面试中常被问到的python基础知识 为了找工作需求,我整理了一些常见的面试时被问到的python问题及回答,希望可以对你有所帮助。 1.python是什么? python是一种解释性语言,它的源代码可以直接运行,python代码在运行之前不需要编译,因为编译器会将源代码转换成中间语言,之后再翻译成机器码再执行。同时它也是动态类型语言,指的是你在声明变量时,不需要说明变量的类型。 2.python的优点及缺点 python适合面向对象的编程,因为它支持通过组合与继承的方式定义类 python简洁、简单

weixin_44139350的博客 1951

【Python】全网最详细的Python入门基础教程(非常详细,整理而来)

标识符 在 Python 中,所有标识符可以包括英文(区分大小写的)、数字以及下划线(_),但不能以数字开头。 以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入。 以双下划线开头的 __foo 代表类的私有成员, 以双下划线开头和结尾的 __ foo__ 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造函数。 语句 Python 的代码块中必须使用相同数目的行首缩进空格数 python中单行注

HNUJSY 10万+

[机器学习]Python基础知识笔记整理

源码地址 笔记源码下载地址 机器学习,深度学习,图像处理,NLP技术笔记地址 Rust,Go,Python,JavaScript,C/C++实现的leetCode,练习算法,总结算法,应用算法 包含了C/C++,Go,Python,Rust,JavaScript数据结构,算法等相关知识总结,以实际项目中遇到的问题 编程语言记录,Rust语言,Go语言,Python语言,Lua语言,C/C++…基...

图解AI 5771

Python的基础知识

Python的基础知识

隔壁王叔的博客 2万+

Unreal Engine鸿蒙移植实战:环境配置、构建流程与性能优化指南

游戏引擎移植是跨平台开发中的关键技术环节,其核心原理在于通过适配目标操作系统的底层接口和工具链,实现同一套代码在不同硬件和软件环境下的高效运行。这项技术的价值在于最大化代码复用率,降低多平台维护成本,并能让应用快速触达新兴生态系统的用户。在移动游戏和XR应用领域,随着鸿蒙HarmonyOS生态的快速发展,将成熟的商业引擎如Unreal Engine迁移至此平台,成为开发者探索新市场机会的重要路径。本文聚焦于Unreal Engine项目向鸿蒙系统的移植实践,详细解析了从环境搭建、源码适配到构建打包的全链路流

weixin_29011395的博客 405

【环境搭建】使用openSfM+MVSNet重建稠密点云

本帖详细介绍了如何使用openSfM+MVSNet对真实采集的数据进行稀疏重建与稠密重建,并针对一些真实场景下可能遇到的问题进行了整理。

YuhsiHu的博客 1971

Python入门基础知识总结(赶紧收藏)

Python入门基础知识总结(赶紧收藏)

Python84310366的博客 9万+

【OpenVINO】OpenVINO C# API 常用 API 详解与演示

在本文中我们基于模型推理流程,演示了OpenVINO C# API使用方法,并和OpenVINO C++API进行了对比,展示了OpenVINO C# API与C++API在使用的区别,这也对使用过C++ API的开发者十分友好,上手会十分容易。在本文中我们只展示了基础的模型推理流程代码,也对各个API进行了测试,针对其他比较高级的API方法,我们后续会继续进行测试其他API方法,向各位开发者展示其用法。

grape_yan的博客 1539

Python入门基础知识总结

Python 是一种解释型、面向对象的语言

不想学习的打工人的博客 3万+

手把手教你用C#实现TwinCAT 3 ADS通讯(附完整代码示例)

本文详细解析了如何使用C#实现TwinCAT 3 ADS通讯,包括协议核心价值、开发环境配置、变量通信实践及高级应用场景。通过完整代码示例和性能优化技巧,帮助开发者高效实现工业自动化系统中的实时数据交换,特别适合倍福(Beckhoff)平台用户。

weixin_29230901的博客 117

MATLAB App Designer 实现多窗口交互与数据传递实战

本文详细介绍了如何使用MATLAB App Designer实现多窗口交互与数据传递的实战技巧。从基础的多窗口应用设计到高级的动态窗口创建,涵盖了窗口调用控制、数据传递方法、状态管理及用户体验优化等核心内容,帮助开发者高效构建复杂的MATLAB GUI应用。

milk5的博客 664

python基础知识xmind整理

练习题:程序随机给一个数,用户猜5次,猜对退出。 import random #随机生成一个0~100的数 num=random.randint(0,100) num=str(num) #打印随机生成的数字 print(num) #弹出输入框,请用户输入 you_num=input('猜猜我写的是0~100之间的哪个整数(你总共有5次机会哦):') if you_num==num: print('yes!第一次就猜对了,心有灵犀!') else: you_num=input('不是哦~

加油小白的博客 1131

西门子PLC实战:基于1200/1500的工业物联网MQTT通讯全解析

本文详细解析了如何在西门子S7-1200/1500系列PLC上实现工业物联网MQTT通讯。通过从硬件准备、网络配置到TIA Portal中MQTT_Client功能块的实战编程,手把手指导工程师打通车间数据桥梁,解决信息孤岛问题,实现PLC数据高效上云或设备间互联。

whisky的博客 1089

python基础知识资料-python基础知识整理(值得收藏)

近些年python语言非常流行,许多开发者都会学习一些python相关知识,本文为大家整理了python的一些基础知识,希望对大家有一定的帮助。注:下文Python代指Python3。基本信息和Javascript一样,面向对象、解释型、动态数据类型一切皆为对象(Object),包含原始数据类型也由内置构造函数创建,高阶对象为Object单行注释使用#标识,多行注释同多行字符串靠缩进约束逻辑分支,...

weixin_37988176的博客 177

【机器学习-17】数据变换---小波变换特征提取及应用案列介绍

小波变换作为一种前沿的数据分析工具,近年来在信号分析领域崭露头角。小波分析的理论和方法凭借其独特优势,在信号处理、图像处理、语音处理、模式识别以及量子物理等多个领域得到了广泛的应用,堪称近年来在工具及方法上的重大突破。小波变换以其多分辨率的特性,在时域和频域均展现出对信号局部特征的强大表征能力。通过伸缩和平移等运算过程,小波变换能够对信号进行多尺度聚焦分析,为非平稳信号的时频分析提供了一种有效手段。它允许我们由粗及细地逐步观察信号,从而精准地提取出有用信息。

qq_38614074的博客 2万+

虚幻商城 Quixel 免费资产一键入库

在免费领取所有Megascans之后,我们只是有了获取 Quixel Megascans 资产的资格,但是没有入 Fab 库,本文将讲解通过脚本将 Quixel 所有资产入库 Fab。

一碗清深的博客 3306

python二级公共基础知识整理

计算机二级python公共基础知识

2401_83675818的博客 1487

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

【Python复健】Python入门基础知识整理1

目录 一、数据类型 1、数字类型(Numbers) 2、布尔类型(Booleans) 3、字符串类型(Strings) 二、容器 1、列表 2、字典 3、集合 4、元组 三、函数 1、函数定义 2、函数参数 四、类 总结 前言 距离上次学python时隔一年,现在学深度学习,进行一个python基础知识的复健。 主要从数据类型(数字 布尔 字符串)、容器(列表 字典 集合 元组)、函数、类四个方面整理。 一、数据类型 1、数字类型(Numbers) 代表整数和.

m0_55983410的博客 593

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

python基础知识整理一

基础知识整理一 声明——因为自己大二的时候自学过一段时间python,我觉得本身自己自学能力也挺强的,所以基础知识可能过的也比较快,下面说一下我看这些基础知识注意到的一些点,我也只能说对自身有用,对其他人可能你们都懂了。 1、字符串和元组都属于不可变序列,不能通过下标方式修改元素值。 2、python是基于值的内存管理方式,不同的变量有相同的值,多个变量指向同一内存地址。 3、查看python中...

wolfXiaobobo的博客 291

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

python爬虫基础知识整理

本文主要记录python爬虫的基础知识点,主要知识:理论基础、爬虫技能简述、实现原理和技术、uillib库和urlerror、正则、headers属性和代理服务器设置及Cookie。 1)理论基础部分 网络爬虫又称网络蜘蛛、网络蚂蚁、网络机器人等,可以按照我们设置的规则自动化爬取网络上的信息,这些规则被称为爬虫算法。 2)爬虫的组成有控制节点、爬虫节点和资源库 个人简单理解就是控制节点相当

chen_ke_hao的博客 1万+

python基础知识整理-整理了27个新手必学的Python基础知识点

原标题:整理了27个新手必学的Python基础知识点1.执行脚本的两种方式Python a.py 直接调用Python解释器执行文件chomd +x a.py ./a.py #修改a.py文件的属性,为可执行,在用 ./ 执行a.py 文件2、简述位、字节的关系1bytes=8bit ,2**8=256,可以代表256中变化,3、简述 ascii、unicode、utf-8、gbk 的关系asci...

weixin_37988176的博客 568

【Python基础知识整理】

一、名词解释 解释 编译:将Python、Java等编程语言的代码翻译成机器语言的过程 编译器 解释器:用来处理代码编译的软件 编程语言:用来定义计算机程序的形式语言,人和计算机交流的语言 机器语言:0、1组合的电脑能够直接处理的指令 解释型语言 编译型语言 源代码 伪代码 流程图 字符编码表 镜像源 集成开发环境 程序:指令的集合,写程序就是用指令控制计算机做我们想让他做的事情。程序是用来处理数据的 可执行程序 源程序 交互式 计算机的工作流程 注释:会让代码更容易

qq_62109420的博客 5133
上一篇: linux文件目录切换及/dev/null的使用方式
下一篇: python下初步使用selenium/phantomJS问题总结
究理观心
博客等级 码龄10年 184粉丝 111原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值