Python基础篇

article/2025/8/17 15:41:56

       python是众多编程语言里面较为高级但也较慢的语言。所以,灵活地使用python内置的类和方法既可以减少代码量,也可以提高代码的运行速度。本文我们主要归纳python的一些基础知识,包括基本的类,内置方法,以及文件操作的一些方法使用。对于这些方法我们不需要死记,只需理解掌握如果使用即可,在需要使用的时候可以查阅本文也可以调用help()方法直接查询。

一、基本的类

        python最基础、最常用的类主要有int整形,float浮点型,str字符串,list列表,dict字典,set集合,tuple元组等等。int整形、float浮点型一般用于给变量赋值,tuple元组属于不可变对象,对其操作一般也只有遍历。而str字符串,list列表,dict字典,set集合是python里面操作方法较为灵活且最为常用的,掌握这4中类型的操作方法后基本就可以灵活使用python中基本的大部分类型。

1.str字符串

1)条件判断方法:

in方法:判断内容是否存在字符串中
    表达式:a in b                 判断a是否在b中,是则返回True,否则为False
not方法:返回表达式结果的'相反值'。如果表达式结果为真,则返回False
    表达式:a not in b                 判断a是否不在b中,不在则返回True,否则为False
is方法: 判断的是 内存地址是否相同
    表达式:a is b                 判断a,b的内存地址是否相同,是则返回True,否则为False

2)取值方法:

(1)可以通过下标进行取值

        a[2]
(2)切片

        a[2:3]
(3)通过for循环取值

3)元素判断与操作的方法:

a.endswith('d') #判断字符串a是否以d结尾,执行结果为布尔值
a.starstwith('d')) #判断字符串a是否以d开头,执行结果为布尔值
a.isalnum()  #判断字符串a是否包含数字和字母,返回结果为布尔值
a.isalpha() #判断字符串a是否都是英文字母,返回结果为布尔值
a.isdigit() #判断字符串a是否都为数字,返回结果为布尔值
a.isspace() #判断字符串a是否都为空格,返回结果为布尔值
a.istitle() #判断字符串a是否首字母大写,返回结果为布尔值
a.islower()  #判断输入的字符串是否为小写字母,返回结果为布尔值
a.isupper()#判断输入的字符串是否为大写字母
a.lower()   #将字符串中的大写字母变成小写
a.upper()  #将字符串中的小写字母变成大写
a.swapcase() #大小写字母反转
a.capitalize() #对字符串的首字母进行大写
a.title()#对字符串中空格隔开的所有首字母进行大写

4)去除字符串指定元素方法

#(参数缺省时去除空格)(返回结果字符串)
a.lstrip('m')   #去掉字符串左边的元素
a.rstrip('m')   #去掉字符串右边的元素
a.strip('m') #去掉两边的元素,中间的元素不可去除

5)join方法

#join是用来通过 某个字符串 拼接 一个可迭代对象的每个元素--->join(可迭代对象参数类型)
'm'.join(str)   #将字符串str中的每个元素都使用m连接,返回一个新字符串,原字符串str的内容未修改
'm'.join(list) #将列表转换为字符串,每个元素之间使用m连接

6)替换方法

#replace
st.replace('a', 'b',n)  #将字符串st中的前n个元素a替换为b,n缺省时默认替换所有符合条件的元素a
#映射,可以做密码加密使用:
p = str.maketrans('abcdefg', '1234567') #前面的字符串和后面的字符串进行映射,a-->1,c-->3
'ccaegg'.translate(p) #输出结果按照上面的maketrans做映射后的字符串,执行结果为:331577
#tab转化为空格
st.expandtabs(tabsize = 8) 把字符串st的tab转为空格,默认为8个

7)检索

a.find(b, 3, 10) #从前往后查找字符串a中b的第一个字符的索引,3,15 是查找范围开始、结束的下标值,缺省时查找整个字符串
a.rfind(b,3,10) #从后往前查找字符串
a[2])#按照索引查找第3个元素
a.index(b)#从左往右按值查找索引
a.rindex(b)#从右往左按值查找索引
a.count(b))#统计b在字符串a中出现的次数

8)切割字符串

#spilt(返回结果类型为list)
a.spilt(b)#按照b分割字符串,缺省时默认为空格
a.splitlines()  #按照换行符分割,是每一行的内容作为list的一个元素
#partition()(返回结果类型为tuple)
a.partition(b)#将字符串a以从左往右第一个b为中心分为三部分
a.rpartition(b)#将字符串a以从右往左第一个b为中心分为三部分

9)随机字符库string

import string
string.ascii_letters#输出所有的大小写字母
string.digits #输出所有(0-9)的数字
string.ascii_letters  #输出大小写的英文字母
string.ascii_lowercase #输出小写英文字母
string.ascii_uppercase #输出小写英文字母

10)格式化字符串

#format(修饰符及说明符同c语言)
"{name}huh{age}".format(name='byz', age=18)#格式化字符串显示
"{name}huh{age}".format_map({'name': 'zhangsan', 'age': 18}) #格式化字典
#占位符%(修饰符及说明符同c语言)
"%d%f%s"%(2,3.14,"huh")
#对齐
a.center(n, b) #长度总共为n,将字符串a放在中间,两边补充b显示
a.ljust(n, b) #长度总共为n,将字符串a放在左边,右边补充b显示
a.rjust(n, b) #长度总共为n,将字符串a放在右边,左边补充b显示
a.zfill(n) #长度总共为n,将字符串a放在右边,左边补充'0'显示

11)编码

str.decode(encodeing[,replace]) 编码str
str.encode(encodeing[,replace]) 解码str

2.list列表

1)增加

<list>.append(<obj>)追加到尾部
<list>.insert(<index>,<obj>)在index处插入obj
<list>.extend(<list>)合并列表到尾部

2)删除

del list[<index>]直接删除
<list>.pop(<index>)删除并返回指定元素
<list>.remove(<obj>)删除找到的第一个obj
<list>.clear()清空列表

3)修改

<list>[<index>]=<obj>将index处的元素直接修改为<obj>

4)检索

<list>.index(<obj>)返回从左开始匹配到的第⼀个<obj>的索引
<list>.count(<obj>)返回<obj>的个数

5)排序

<list>.sort(key=<排序规则>,reverse=<boolen>)#对列表的一种操作
sorted(<可迭代对象>,key=<排序规则>,reverse=<boolen>)#返回一个新的排序过的列表
<list>.reverse()反转

6)复制

list.copy():返回list的浅拷贝

3.dict字典

.clear()				#清除字段里所有的元素
.copy()				#字典的浅复制
.formkeys()			#创建字典,以序列seq中的元素作为键,val为字典所有对应键的初始值
.get(key,default=None)		#设置不在字典中默认的值
.key in dict			#键是否在字典里,返回true或false
.items()				#以列表的方式遍历(键,值)元组数组
.keys()				#使用list()转换为列表
.setdefault(key,default=None)		#为不存在于字典中的键,添加或设置键为default
.update()				#把字典里的键和值更新到另一个字典里
.values()				#使用list()转换为列表
.pop(key[.default])			#删除字典键的值,返回删除键的值
.popitem()			#随机删除字典中的一对键值(一般删除末尾的一对)

4.set集合

1)以下方法返回一个新的集合

集合(S).方法名等价符号方法说明
s.issubset(t)s<=t子集(允许不严格意义上的子集):s中所有的元素都是t的成员
s<t真子集(严格意义上的子集):s!=t且s中所有的元素都是t的成员
s.issuperset(t)s>=t超集(允许不严格意义上的超集):t中所有的原色都是s的成员
s>t超集(严格意义上的超集):t!=s且t中所有的原色都是s的成员
s.union(t)    s|t并集操作:s和t的并集
s.intersection(t)s&t交集操作:s与t中的交集
s.difference(t)s-t差集操作:在s中存在但在t中不存在的元素
s.symmetric_difference(t)s^t对称差分操作:s或t中的元素,而不是两者共有的元素
s.copy()返回s的拷贝(浅复制)

2)以下方法是对原来集合s的操作

集合(S).方法名等价符号方法说明
s.update(t)s|=t将t中的元素添加到s中
s.intersection_update(t)s&=t交集修改操作:s中仅包含s与t共有的元素
s.difference_update(t)s-=t差集修改操作:s中仅包括s中存在但t中不存在的元素
s.symmetric_difference_update(t)s^=t对称差分修改操作:s中包括仅属于s或仅属于t的成员
s.add(obj)添加操作:将obj添加到s
s.remove(obj)删除操作:将obj从s中移除,若不存在会引发异常
s.discard(obj)丢弃操作:将obj从s中删除,如果不存在也没事
s.pop()弹出操作:移除并返回s中的任意一个元素
s.clear()清除操作:清除s中的所有元素
s.isdisjoint(t)若s与t无交集,则返回True,否则返回False

二、内置方法

较多的内置方法也是python区别于其他编程语言的一个特点,熟练掌握这些内置方法的使用就已经可以实现python大部分的功能,灵活使用python的内置方法可以大幅度提高代码的速度以及减少代码量。

1.类型转换

bool(object):返回object对应的布尔值
str(object, encoding=encoding, errors=errors):返回object对应的以encoding编码的字符串errors是转换失败时的操作
int(value,base=10):将value强制转换为10进制int型若value为数字,则不可改变base的值;若为字符串,则base为value进制数
float(value):将value转换为浮点数
complex(real,imaginary):返回一个complex对象复数(real+imaginary j)第一个参数也可是表示复数的字符串,此时省略第二个参数
list(iterable):创建一个iterable对应的列表
tuple(iterable):返回一个新建的iterable的元组
set(iterable):返回一个新建的iterable的set对象
dict(key1=value1,key2=value2...):创建字典对象
enumerate(iterable, start=0):将iterable转化为一个enumerate枚举对象start:开始枚举的编号enumerate对象是一个可迭代对象,每次迭代为(number,iterable[i])

2.对象及属性操作

object():返回一个空对象object不能向该对象添加新的属性或方法。该对象是所有类的基础,它拥有所有类默认的内置属性和方法。
callable(object):如果指定的对象是可调用的,则返回True,否则返回False。
isinstance(object,class):若object是class指定类型的,返回True,否则返回False若class是一个元组,如果对象是元组中的类型之一,则此函数将返回True。isinstance() 与 type() 区别:type() 不考虑类的继承关系。isinstance() 考虑类的继承关系。
id(object):返回object的id值
type():返回一个type对象用法1: type(object) :表示object的类型用法2:type(name, bases, dict) :产生一个新类型name:类型名bases:类型的基类元组dict:类内定义的命名空间变量
len(object):返回object的项目数,当对象是字符串时,返回字符串中的字符数。
memoryview(obj):从指定的对象返回一个内存视图对象。所谓内存视图对象,是指对支持缓冲区协议的数据进行包装,在不需要复制对象基础上允许Python代码访问。
globals():以字典类型返回当前位置的全部全局变量
locals():将本地局部变量作为字典返回。
vars(object):返回object的__dic__属性若没有参数,相当于locals()
dir(object):返回object的所有属性和方法(列表形式返回)
delattr(object,attribute):删除object的attribute属性,相当于del object.attribute
getattr(object, attr,[, default]):返回object的属性attr的值default:可选参数,如果attr不存在时返回的值
hasattr(object, attribute):如果object有attribute属性,返回True,否则返回False
setattr(object,attribute,value):设置object的attribute属性值为value
issubclass(child, father):如果child是father的子类,则返回True,否则返回False。
super():用法1:super() -> same as super(__class__, <first argument>)用法2:super(type) -> unbound super object用法3:super(type, obj) -> bound super object; requires isinstance(obj, type)用法4:super(type, type2) -> bound super object; requires issubclass(type2, type)

3.数学操作

abs(x):返回x的绝对值区别:fabs()函数只适用于float和integer类型,而abs()也适用于复数。
round(number,ndigits=None):返回将number四舍五入为小数位数为ndigits的数
bin(n):返回整数n的二进制形式的字符串,前缀0b
hex(number):返回number的十六进制形式的字符串,前缀0x
oct(n):返回整数n的八进制形式的字符串,前缀0o
divmod(x,y):返回x除以y的商和余数组成的元组(x//y,x%y)
pow(base,exp,mod=None):返回base^exp%mod
max():	(iterable,[, default=obj, key=func]):返回iterable中的最大值default为iterable为空时返回的对象(v1,v2...[, key=func]):返回v1,v2..中的最大值key为比较的依据,是func作用在各元素上时返回的值
min():同max(),返回最小值
sum(iterable,start=0):返回start加iterable内元素的总和

4.迭代器操作

all(iterable):如果iterable中的所有项目均为true,则all()函数返回True,否则返回False。如果可迭代对象为空,则all()函数也将返回True。
any(iterable):如果iterable中的任何项目为true,则any()函数将返回True,否则返回False。如果可迭代对象为空,则any()函数将返回False。
iter():返回一个迭代器:若参数只有一个(iterable),则返回对应的迭代器若参数为(callable,sentinel),则每次迭代时调用callable直到返回值为sentinel
next(iterator[, default]):返回迭代器iterator下一个要迭代的元素若迭代器结束,则返回default
frozenset(iterable):返回一个iterable转变为的不可更改的Frozenset对象
filter(func,iterable):返回iterable中经func函数判断为真的部分组成的迭代器
map(function,iterable,...):返回一个function作用于iterable中每个元素得到的新元素组成的map对象(可迭代对象)
zip(iterables...):返回一个zip对象,它是一个元组的迭代器,其中每个传递的迭代器中的对应的元素配对为一个元组如果传递的迭代器具有不同的长度,则项目数最少的迭代器将确定新迭代器的长度。利用 * 号操作符,可以将元组解压为列表。
range(start=0,stop[,step=1]):返回一个range对象(数字序列从start到stop,左开右闭,步长step)
slice(start,end,step):返回一个切片对象。切片对象用于指定如何对序列进行切片。可以指定在哪里开始切片以及在哪里结束切片。还可以指定step。参数同range()
reversed(sequence):返回sequence的反向迭代器
sorted(iterable, key=None, reverse=False):返回iterable的以key排序的列表。reverse:是否反向

5.字符串操作

ascii(object):ascii()函数返回任何对象(字符串,元组,列表等)的可读版本。ascii()函数将用转义符替换所有非ascii字符:
chu(x):返回Unicode代码为x的字符
format(value, format_spec=''):返回按format_spec格式化后的字符串,同string.format()方法
ord(c):返回字符c的unicode编码

6.字节操作

bytearray(x, encoding, error):返回一个bytearray对象,将对象转换为字节数组对象,或创建指定大小的空字节数组对象。x:创建bytearray对象时使用的源。如果它是一个整数,将创建一个指定大小的空bytearray对象。如果是字符串,需要encoding参数。encoding:字符串的编码error:指定编码失败时的处理方法。
bytes(x, encoding, error):返回一个bytes对象。将对象转换为字节对象,或创建指定大小的空字节对象。参数同bytearraybytes()和bytearray()之间的区别在于,bytes()返回一个无法修改的对象,而bytearray()返回可以修改的对象。

7.编译输入输出

compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1, *, _feature_version=-1)source:表示一个Python模块、语句或表达式的字符串filename:用于运行时的错误消息mode:编译模式flags:哪条未来的语句影响代码编译dont_inherit:如果为True,停止编译继承optimize=-1,_feature_version=-1
eval(source, globals=None, locals=None,):执行source指定的python表达式source:字符串类型的python表达式或者经过compile()返回的对象(单个表达式)globals:包含全局参数的字典locals:包含局部变量的字典
exec(source, globals=None, locals=None,):执行source指定的python代码(可以是大代码块)
input(prompt):提示prompt后返回输入对应的字符串
print(value,..., sep=' ', end='\n', file=sys.stdout,flush=False):value --表示输出的对象。输出多个对象时,需要用 , (逗号)分隔。sep -- 用来间隔多个对象。end -- 用来设定以什么结尾file -- 要写入的文件对象(具有write方法)flush--为 True时输出流会被强制刷新,为False则会被缓存。(print输出时会先缓存到缓冲区,最后输出)

三、文件操作

任何编程语言都需要对文件系统进行操作,且大部分的编程语言的文件操作方法大致相似,如果掌握了其中一种,其他编程语言的文件操作也可手到擒来。

1.打开文件

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)打开一个文件,并将其作为文件对象返回。file:文件地址mode:文件打开模式buffering:寄存行缓冲区的大小(整数),-1为默认大小encoding:打开文件时的编码格式newlines:若不设置,universal newlines mode工作(不同操作系统换行符不一样)

2.文件对象的属性

f.buffer
f.closed:若f已经关闭,则返回True,否则返回False
f.encoding:文件的编码格式
f.errors
f.line_buffering
f.mode:文件打开模式
f.name:文件名
f.newlines:
f.write_through

3.文件对象的操作

f.close():用于关闭一个已打开的文件。关闭后的文件不能再进行读写操作, 否则会触发 ValueError 错误。 close() 方法允许调用多次。当 file 对象,被引用到操作另外一个文件时,Python 会自动关闭之前的 file 对象。 使用 close() 方法关闭文件是一个好的习惯。在某些情况下,由于缓冲的原因,对文件所做的更改可能要等到关闭文件后才能显示。
f.detach():将底层缓冲区与f分离并返回它。在分离基础缓冲区之后,f位于不可用状态。  
f.fileno():返回一个整型的文件描述符(file descriptor FD 整型),可用于底层操作系统的 I/O 操作。文件描述符:open()函数的file参数,除了可以接受字符串路径外,还可以接受文件描述符,文件描述符是个整数,对应程序已经打开的文件。标准输入使用文件描述符0,标准输入使用1,标准错误使用2,程序中打开的文件使用3、4、5...等数字。
f.flush():用来刷新缓冲区的,即将缓冲区中的数据立刻写入文件,同时清空缓冲区,不需要是被动的等待输出缓冲区写入。一般情况下,文件关闭后会自动刷新缓冲区,但有时你需要在关闭前刷新它,这时就可以使用 flush() 方法。
f.isatty():如果文件流是交互式的,则返回True.例如:连接到终端设备。
f.read(size):从文件的指针位置开始返回指定的字节数。size:可选,要返回的字节数。默认值-1,表示整个文件。
f.readable():如果文件可读,则返回True,否则返回False。
f.readline(size):从文件读取整行,包括 "\n" 字符。如果指定了一个非负数的参数,则返回指定大小的字节数,包括 "\n" 字符size:可选的,从行返回的字节数。默认值-1,表示整行。
f.readlines(sizehint):返回一个列表,其中包含文件中的每一行作为列表元素。sizehint:可选的,sizehint从文件中读取的字节数,如果返回的字节数超过sizehint,将不再返回任何行。 默认值为-1,这意味着将返回所有行。
f.reconfigure(encoding=None, errors=None, newline=None, line_buffering=None, write_through=None) :使用新参数重新配置文本流。  这也会进行隐式的流刷新。  	
f.seek(offset):设置文件流中的当前文件位置并返回该位置。如果操作成功,则返回新的文件位置,如果操作失败,则函数返回 -1。offset:必需的参数,代表需要移动偏移的字节数
f.seekable():如果文件可查找,则返回True,否则返回False。如果文件允许访问文件流,则该文件是可查找的
f.tell():返回文件流中的当前文件位置。
f.truncate(size=None):将文件大小调整至给定的字节数。如果未指定大小,将使用当前位置。size:可选的,截断后文件的大小(以字节为单位)
f.write(str):将指定的文本str写入文件。返回写入文本大小。指定文本将被插入的位置取决于文件模式和流位置.在文件关闭前或缓冲区刷新前,字符串内容存储在缓冲区中,这时你在文件中是看不到写入的内容的。如果文件打开模式带 b,那写入文件内容时,str (参数)要用 encode 方法转为 bytes 形式,否则报错
f.writable():如果文件可写,返回True,否则返回False。
f.writelines(list):将列表list的元素写入文件。文本插入的位置取决于文件模式和流位置。换行需要指定换行符 \n。

最后感谢大家的观看


http://chatgpt.dhexx.cn/article/XnPnlXme.shtml

相关文章

python中的函数(全)

函数的定义 概述&#xff1a;将一段经常使用的函数封装起来&#xff0c;减少重复代码&#xff0c;一个较大的程序&#xff0c;一般分为若干个程序块&#xff0c;每个模块实现特定的功能 于python中&#xff0c;定义函数时要用到def 语法结构&#xff1a; def 函数名称&…

linux 图形设计软件,Ubuntu下使用Blender 3D图形专业设计工具

如果你正在为你的Ubuntu Linux操作系统寻找免费而又够酷够炫的图形设计软件&#xff0c;你就来对地方了&#xff01;这一次&#xff0c;我们将为你介绍应用广泛而且免费的3D图形设计软件Blender 。 Blender是一个自由、开源的3D模型创作软件&#xff0c;不仅适用于Linux平台&am…

软件工程技术--第五章 详细设计

第五章 详细设计 5.1详细设计的任务与原则 详细设计&#xff08;又称为过程设计或模块设计&#xff09;&#xff0c;是编码的前导。 详细设计的根本目标是&#xff1a; 确定应该怎样具体地实现所要求的系统。经过这个阶段的设计工作&#xff0c;应该得出对目标系统的精确描…

1 画图软件设计概述

本人这段时间完成了一个小的绘图软件的设计&#xff1b;主要的功能包括&#xff1a; 1、文件操作&#xff08;打开、关闭、保存、打印、等&#xff09; 2、编辑功能 自由画笔&#xff0c;画点、直线、矩形、等 橡皮擦 撤销、恢复 3、查看功能&#xff0c;图片的放大、缩小…

基于Java实现的绘图软件工具设计

基于Java实现的绘图软件工具设计 演示视频 基于Java设计的绘图工具 01. 题目要求 做一个简单的绘图工具&#xff0c;以CAD的方式操作&#xff0c;能放置直线、矩形、圆和文字&#xff0c;能选中图形&#xff0c;修改参数&#xff0c;如颜色等&#xff0c;能拖动图形和调整大小…

linux画板软件下载,Drawing画图软件

Drawing Linux(简单画图软件)让Linux用户有像win画图工具一样的体验&#xff0c;Linux下一款简单的绘图程序&#xff0c;类似Windows自带的画图&#xff0c;支持PNG&#xff0c;JPEG和bmp文件&#xff01; 软件介绍 该应用程序是一个基本的图像编辑器&#xff0c;类似于Microso…

【软考-软件设计师】(下午题).

【软考-软件设计师】(下午题). 一&#xff0c;数据流图 二&#xff0c;数据库 三&#xff0c;UNL 四&#xff0c;算法题 &#xff0c;c语言 五&#xff0c;c / java &#xff0c;程序填空 数据流图 数据流图基本概念 数据流图&#xff1a;没有联系&#xff08;&#xff09; …

基于JavaSwing开发画图软件 课程设计 小作业 大作业源码

基于JavaSwing开发画图软件&#xff08;大作业/课程设计&#xff09; 开发环境: Windows操作系统 开发工具&#xff1a;MyEclipse/eclipse/ideaJdk 运行效果图&#xff1a; 基于JavaSwing开发画图软件&#xff08;大作业/课程设计&#xff09; 开发环境: Windows操作系统 开…

2 画图软件 界面设计

打开Qt creator新建项目 &#xff08;1&#xff09;选择Qt控件项目–> Qt Gui应用&#xff08;为了适合新手我尽量附图&#xff09; &#xff08;2&#xff09;点击确定后出现项目名称和创建路径大家自己选择喽。我起的名称是pen 然后一直点击下一步就好了我们双击界面…

画图工具的认识及应用计算机,认知画图软件教学设计

认知画图软件教学设计 引导语&#xff1a;教学设计有利于教师主导作用的发挥&#xff0c;有利于按教学目标的要求来组织教学。以下是百分网小编整理的两篇不同的认知画图软件的教学设计&#xff0c;以供参考学习&#xff0c;欢迎阅读! 设计一 教学目的与要求 1、学会进入与正常…

计算机画图软件教学教案,画图软件教学设计

画图软件教学设计 学会用作图软件作图很重要!下面是百分网小编收集整理的画图软件教学设计&#xff0c;希望可以帮助到你! [教学目标] (1)学会进入与正常退出Windows 98的“画图”窗口。 (2)认识Windows 98“画图”窗口的组成。 (3)初步认识绘图工具箱。 [课时安排]1课时。 [教…

盘点年度最佳10大顶级绘图软件,满足你99%的图表需求,赶紧收藏

有效的沟通&#xff0c;从来都不是字数与数据的堆砌&#xff0c;有时一张图表的价值远高于成千的文字描述&#xff0c;将复杂的信息讲明白&#xff0c;便于浏览&#xff0c;让人一目了然就是信息视觉化的最佳效果。 老李我刚开始工作的时候&#xff0c;习惯什么都直接放上数据&…

dind(docker in docker)镜像-使用Docker学习Docker

文章目录 使用Docker学习Docker一、搭建演示环境二、关联基础docker image 文件系统什么是image layerDockerfile VOLUME&#xff08;数据卷&#xff09; 指令Volume命令的使用 什么是container-diff使用 三、演示时间探索 docker create 命令探索 docker start 命令探索 docke…

Docker学习1 - Docker

Docker 在部署中的重要性 直接把程序安装或部署在Linux操作系统上面&#xff0c;很容易引发资源冲突程序卸载不干净&#xff0c;导致无法安装或部署新程序每次部署之前要安装很多软件&#xff0c;修改复杂的配置文件无法让服务器硬件资源实现多租户服务增大了在Linux系统上部署…

Docker学习记录-01

Docker 的基本组成 镜像(image): 好比一个模板,tomcat -> run -> tomcat01 (container) 镜像可以创建多个容器 容器(container): 容器可以启动&#xff0c;停止&#xff0c;删除&#xff0c;基本命令 容器就是一个简易的Linux系统 仓库(repository)&#xff1a; 存…

docker学习之Ubuntu系统部署docker

目录 安装环境&#xff1a; 支持安装docker的Ubuntu操作系统版本 卸载旧版本的docker 安装docker所需要的依赖包 添加Docker的官方GPG密钥&#xff1a; 设置docker的镜像仓库 安装docker引擎 测试docker 卸载Docke ​​​​安装完毕。 安装环境&#xff1a; Linux系…

Docker学习2

文章目录 Docker学习Docker镜像是什么特点Docker镜像commit操作补充 Docker容器数据卷是什么能干嘛数据卷容器内添加 数据卷容器 DockerFile解析是什么DockerFile构建过程解析基础知识Docker执行DockerFile的大致流程 DockerFile体系结构&#xff08;保留字指令&#xff09;Doc…

Docker学习自我总结(一)

以下内容皆参考至狂神说docker学习视频 一、初识dockerfile ​ docker镜像创建时需要使用dockerfile&#xff0c;dockerfile相当于一个命令脚本&#xff0c;通过这个脚本可以生成镜像&#xff0c;镜像是一层一层的&#xff0c;脚本一个个的命令&#xff0c;每个命令都是一层&…

Docker 学习笔记

Docker 学习笔记 Docker 安装CentOS 安装 DockerUbuntu 安装 Docker Docker 常用命令 Docker 实操记录Docker 安装mysqlDocker 部署 jupyter notebook Docker 安装 CentOS 安装 Docker 以下是docker官网的安装教程&#xff0c;我只是将命令都提取出来 按下列顺序逐步输入即可…

docker 学习

centos7安装docker 步骤 1、Docker从1.13版本之后采用时间线的方式作为版本号,分为社区版CE和企业版EE。 社区版是免费提供给个人开发者和小型团体使用的,企业版会提供额外的收费服务,比如经过官方测试认证过的基础设施、容器、插件等。 社区版按照stable和edge两种方式发…