python常用的内置模块有哪些?这20个模块算是高频使用的吗?(上)
itomcoil 2024-12-23 11:08 17 浏览
1.os
1.1 作用
主要是和操作系统相关的一个模块,如可以进行文件/目录的创建、删除等
1.2 导入
import os
1.3 常用方法及说明
常用方法 | 说明 |
os.getcwd() | 获取当前路径 |
os.chdir(path) | 改变当前工作目录 |
os.listdir(path) | 列出指定路径下的所有文件和子目录,以列表形式展示 |
os.mkdir('dirname') | 创建文件夹 |
os.makedirs('dirname1/dirname2') | 可以生成多层递归目录 |
os.removedirs('dirname') | 若目录为空,则删除,并递归到上一层目录,若也为空,则删除。 |
os.rmdir('dirname') | 删除空目录,若目录不为空则报错 |
os.remove() | 删除一个文件 |
os.rename('oldname','newname') | 重命名文件/目录 |
os.stat('path/filename'') | 获取文件/目录信息 |
os.sep | 输入操作系统特定的路径分隔符,win下为'\',Linux为'/' |
os.name | 获取当前的平台,win为'nt' ,Linux为'posix' |
os.system('command') | 运行shell命令 |
os.environ | 获取系统环境变量 |
os.path.abspath(path) | 返回path的绝对路径 |
os.path.split(path) | 将path分割成目录和文件名的元组 |
os.path.splittext(path) | 分割路径,返回路径名和文件扩展名的元祖 |
os.path.dirname(path) | 返回path的上一层目录 |
os.path.basename(path) | 返回path中最后的文件名 |
os.path.exist(path) | 若path存在返回True,否则返回False |
os.path.isfile(path) | 若path是一个文件则返回Ture,否则返回False |
os.path.isdir(path) | 若path是一个目录则返回Ture,否则返回False |
os.path.isabs(path) | 若path是绝对路径则返回Ture,否则返回False |
os.path.join(path1[, path2[, ...]]) | 把目录和文件名合成一个路径 |
os.path.getsize(path) | 返回文件大小,如果文件不存在就报错 |
os.path.getmtime(path) | 返回最近文件修改时间 |
os.path.getctime(path) | 返回文件path创建时间 |
os.path.realpath(path) | 返回path的真实路径 |
os.path.normpath(path) | 返回path的真实路径 |
1.4 示例
import os
print(os.getcwd()) #获取当前路径 ,输出:E:\project\demo_mod
print(os.listdir()) #列出当前目录下的所有文件和目录 ,输出:['.idea', 'abc.txt', 'demo_os.py']
os.mkdir("aaa") #创建文件夹aaa
os.rmdir("aaa") #删除空目录aaa
os.makedirs("abc/bcd") #创建多层文件夹abc/bcd
os.removedirs("abc/bcd") #删除多层多文件abc/bcd
print(os.stat('abc.txt')) # 输出 :os.stat_result(st_mode=33206, st_ino=562949953424572, st_dev
print(os.path.abspath(".")) # 返回当前路径的绝对路径 ,输出 :E:\project\demo_mod
os.path.exists(r"E:\project\demo01") # 判断path是否存在 ,输出:False
os.path.isfile("abc.txt") # 判断abc.txt是文件 ,输出:True
print(os.path.split(r"E:\project\demo_mod\abc.txt")) # ('E:\\project\\demo_mod', 'abc.txt')
print(os.path.dirname(r"E:\project\demo_mod\abc.txt")) # E:\project\demo_mod
2.sys
2.1 作用
针对python解释器相关的变量和方法
2.2 导入
import sys
2.3 常用方法及说明
属性/方法 | 说明 |
sys.argv | 命令行参数,第一个参数为脚本名字 |
sys.modules | 所有加载到内存的模块都放在modules |
sys.path | 返回查找模块的搜索路径,以列表返回 |
sys.platform | 返回操作系统平台名词 |
sys.version | 返回python解释器程序的版本信息 |
sys.exit() | 退出程序 |
2.4 示例
import sys
print("获取默认第一个参数:",sys.argv)
print("获取系统路径:",sys.path)
print("获取当前平台:",sys.platform)
print("获取当前版本:",sys.version)
#返回:
获取默认第一个参数: ['E:/project/demo_mod/demo02_sys.py']
获取系统路径: ['E:\\project\\demo_mod', 'E:\\project\\demo_mod', 'C:\\python36\\python36.zip', 'C:\\python36\\DLLs', 'C:\\python36\\lib', 'C:\\python36', 'C:\\python36\\lib\\site-packages']
获取当前平台: win32
获取当前版本: 3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:04:45) [MSC v.1900 32 bit (Intel)
3.time
3.1 作用
和时间相关的模块
3.2 导入
import time
3.3 常用方法及说明
方法 | 说明 |
time.time() | 获取当前时间戳 |
time.sleep(n) | 当前线程停止运行n秒 |
time.asctime() | 返回当前时间,格式是西欧格式 |
time.ctime() | 返回当前时间,格式是西欧格式 |
time.localtime() | 返回当前时间对象 |
time.struct_time() | 构造一个对应的事件对象 |
time.strftime() | 将一个时间对象格式化为特定的字符串输出 |
time.strptime() | 照格式化字符把一个格式化时间字符串转成元组。 |
3.4 示例
import time
print("获取当前时间戳:",time.time())
print("返回当前时间,西欧格式:",time.ctime())
print("返回当前时间对象:",time.localtime())
time.sleep(2) #睡眠2s
print("返回格式化后的时间:",time.strftime("%Y-%m-%d %X", time.localtime()))
print("将格式化的时间转化成时间对象,元祖形式:",time.strptime('2010-8-11 7:26:16', '%Y-%m-%d %X'))
#返回:
获取当前时间戳: 1634373068.0492582
返回当前时间,西欧格式: Sat Oct 16 16:31:08 2021
返回当前时间对象: time.struct_time(tm_year=2021, tm_mon=10, tm_mday=16, tm_hour=16, tm_min=31, tm_sec=8, tm_wday=5, tm_yday=289, tm_isdst=0)
返回格式化后的时间: 2021-10-16 16:31:10
将格式化的时间转化成时间对象,元祖形式: time.struct_time(tm_year=2010, tm_mon=8, tm_mday=11, tm_hour=7, tm_min=26, tm_sec=16, tm_wday=2, tm_yday=223, tm_isdst=-1)
4.datetime
4.1 作用
关于时间和日期的模块 ,这里面有几个常用的类,包括:
- date : 日期类
- time : 时间类
- datetime : 日期和时间的类 ,相当于前面的两个类
- datedelta : 时间间隔
4.2 导入
4.3 常用方法及说明
from datetime import date
d = date(date(2020,11,20))
下面表格中的d就是上面的日期对象
属性/方法 | 说明 |
date.max | 返回最大的日期对象 |
date.min | 返回最小的日期对象 |
d.year | 返回2020 |
d.month | 返回11 |
d.day | 返回20 |
d.replace(year,month,day) | 生成并返回一个新的日期对象,原日期对象不变 |
d.timetuple() | 返回日期对应的time.struct_time对象 |
d.toordinal() | 返回日期自0001-01-01开始的第多少天 |
d.weekday() | 返回日期是星期几,[0, 6],0表示星期一 |
d.isoweekday() | 返回日期是星期几,[1, 7], 1表示星期一 |
d.isocalendar() | 返回一个元组,格式为:(year, weekday, isoweekday) |
d.isoformat() | 返回‘YYYY-MM-DD'格式的日期字符串 |
d.strftime(format) | 返回指定格式的日期字符串,与time模块的strftime(forma t, struct_time)功能相同 |
from datetime import time
t = time(20,51,32)
下面表格中的t就是上面的时间对象
属性/方法 | 说明 |
t.hour | 返回20,取值范围[0,23] |
t.minute | 返回51,取值范围在[0,59] |
t.second | 返32,取值范围在[0,59] |
t.microsecond | 微秒 |
t.tzinfo | 返回传递给time构造方法的tzinfo对象,如果该参数未给出,则返回None |
t.replace(hour[, minute[, second[, microsecond[, tzinfo]]]]) | 生成并返回一个新的时间对象,原时间对象不变 |
t.isoformat() | 返回一个‘HH:MM:SS.%f'格式的时间字符串 |
t.strftime() | 返回指定格式的时间字符串,与time模块的strftime(format, struct_time)功能相同 |
from datetime import datetime
dt = datetime(2020,09,22,10,35,28,322)
下面表格中的dt就是上面的日期时间对象
属性/方法 | 说明 |
dt.year | 返回2020 |
dt.month | 返回09 |
dt.day | 返回22 |
dt.hour | 返回10 |
dt.minute | 返回35 |
dt.second | 返回28 |
dt.microsecond | 返回322 |
datetime.today() | 返回一个表示当前本期日期时间的datetime对象 |
datetime.now([tz]) | 返回指定时区日期时间的datetime对象,如果不指定tz参数则结果同上 |
datetime.utcnow() | 返回当前utc日期时间的datetime对象 |
datetime.fromtimestamp(timestamp[, tz]) | 根据指定的时间戳创建一个datetime对象 |
datetime.utcfromtimestamp(timestamp) | 根据指定的时间戳创建一个datetime对象 |
datetime.combine(date, time) | 把指定的date和time对象整合成一个datetime对象 |
datetime.strptime(date_str, format) | 将时间字符串转换为datetime对象 |
datetime.timedelta() | 返回一个时间间隔对象,可以直接与datetime.datetime对象做加减操作 |
4.4 示例
date示例
from datetime import date
now = date(2021, 10, 16)
tomorrow = now.replace(day = 17)
print('今天日期:', date.today())
print('今天日期:', now,)
print('明天日期:', tomorrow)
print("日期的元祖", now.timetuple())
print('返回星期几,0代表星期一:', now.weekday())
print('返回星期几,1代表星期一:', now.isoweekday())
print( '返回一个元祖', now.isocalendar())
print( '返回日期字符串:', now.isoformat())
print( '返回格式化的日期:', now.strftime("%Y-%m-%d"))
#输出:
今天日期: 2021-10-16
今天日期: 2021-10-16
明天日期: 2021-10-17
日期的元祖 time.struct_time(tm_year=2021, tm_mon=10, tm_mday=16, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=5, tm_yday=289, tm_isdst=-1)
返回星期几,0代表星期一: 5
返回星期几,1代表星期一: 6
返回一个元祖 (2021, 41, 6)
返回日期字符串: 2021-10-16
返回格式化的日期: 2021-10-16
time示例
from datetime import time
t1 = time(17,25,15)
print("显示小时:",t1.hour)
print("显示分钟:",t1.minute)
print("显示秒:",t1.second)
print("显示微秒:",t1.microsecond)
tm1 = t1.replace(minute=32)
print("替换后时间:",tm1)
print('返回时间字符串:', t1.isoformat())
print('返回格式化后的时间字符串', t1.strftime("%X"))
#输出:
显示小时: 17
显示分钟: 25
显示秒: 15
显示微秒: 0
替换后时间: 17:32:15
返回时间字符串: 17:25:15
返回格式化后的时间字符串 17:25:15
datetime示例
from datetime import datetime
print('最大时间:', datetime.max)
print('最小时间:', datetime.min)
print('今天时间,精确到微秒:', datetime.today())
print('现在时间,精确到微秒::', datetime.now())
print("格式化日期:",datetime.strftime(datetime.now(),"%y-%m-%d %H:%M:%S"))
#输出 :
最大时间: 9999-12-31 23:59:59.999999
最小时间: 0001-01-01 00:00:00
今天时间,精确到微秒: 2021-10-16 17:41:08.807900
现在时间,精确到微秒:: 2021-10-16 17:41:08.807900
格式化日期: 21-10-16 17:41:08
timedelta示例
from datetime import timedelta,datetime
dt = datetime.now()
#日期减一天
dt1 = dt + timedelta(days=-1) #昨天
dt2 = dt - timedelta(days=1) #昨天
dt3 = dt + timedelta(days=1) #明天
delta_obj = dt3-dt
print("当前日期-1:",dt1)
print("当前日期-1:",dt2)
print("当前日期+1:",dt3)
print("相差几天:",delta_obj)
#输出:
当前日期-1: 2021-10-15 17:45:39.574903
当前日期-1: 2021-10-15 17:45:39.574903
当前日期+1: 2021-10-17 17:45:39.574903
相差几天: 1 day, 0:00:00
5.random
5.1 作用
用于生成随机数
5.2 导入
import random
5.3 常用方法及说明
方法 | 说明 |
random.random() | 用于生成一个0~1的随机浮点数 |
random.uniform(a,b) | 用于生成一个指定范围内的随机浮点数 |
random.randint(a,b) | 用于生成一个指定范围内的整数 |
random.randrange(start,end,step) | 从指定范围内,按指定基数递增的集合中 获取一个随机数。 |
random.choice(sequence) | 从序列中获取一个随机数 |
random.shuffle(x[, random]) | 用于将一个列表中的元素打乱,即将列表内的元素随机排列。 |
random.sample(sequence, k) | 从指定序列中随机获取指定长度的片断并随机排列。 |
5.4 示例
import random
print("生成一个0~1的随机数:",random.random())
print("生成一个指定范围内的随机数:",random.uniform(1,10))
print("生成一个指定范围的随机整数:",random.randint(1,100))
print("生成指定集合,然后随机生成一个数:",random.randrange(1,5,1))
print("从列表中随机拿一个数:",random.choice(['a','b','c','d']))
print("指定的长度中随机排序",random.sample(['a','b','c','d'],3))
lst = [1,3,46,33,'a','b','c','d']
random.shuffle(lst)
print("列表被打乱后随机排序",lst)
#输出:
生成一个0~1的随机数: 0.06636579979518498
生成一个指定范围内的随机数: 7.29403347010388
生成一个指定范围的随机整数: 93
生成指定集合,然后随机生成一个数: 3
从列表中随机拿一个数: c
指定的长度中随机排序 ['d', 'b', 'a']
列表被打乱后随机排序 ['a', 3, 46, 'b', 1, 'c', 33, 'd']
6.subprocess
6.1 作用
执行系统命令
6.2 导入
import subprocess
6.3 常用方法及说明
方法 | 说明 |
subprocess.call(command) | 执行命令,返回状态码 |
subprocess.run() | 执行命令,等待命令执行完成后返回一个包含执行结果的CompletedProcess类的实例。 |
subprocess.check_call(command) | 执行命令,如果执行状态码是0,则返回0,否则抛出异常 |
subprocess.check_output() | 执行命令,如果执行状态码是0,则返回命令执行结果,否则抛出异常 |
subprocess.getoutput(cmd) | 接收字符串格式的命令,执行命令并返回执行结果,其功能类似于os.popen(cmd).read()和commands.getoutput(cmd)。 |
subprocess.getstatusoutput(cmd) | 执行cmd命令,返回一个元组(命令执行状态, 命令执行结果输出),其功能类似于commands.getstatusoutput()。 |
subprocess.Popen() | 可以执行各种命令,以上的那些方法都是基于此类实现的。 |
6.4 示例
import subprocess
# 查看当前目录下的文件 ,以下三条命令必须指定shell参数 ,否则会报错
subprocess.run(["dir"],shell=True)
subprocess.run(["java","-version"])
subprocess.call("dir",shell=True)
subprocess.check_call("dir",shell=True)
# 以下两条方法专门就是执行shell命令的 。
subprocess.getoutput("dir")
subprocess.getstatusoutput("dir")
#输出 :以上都可以返回命令执行后的结果
7.hashlib
7.1 作用
用于加密相关的操作
7.2 导入
import hashlib
7.3 常用方法及说明
方法 | 说明 |
hashlib.md5() | 进行md5算法加密 |
hashlib.sha1() | 进行SHA1算法加密 |
hashlib.sha224() | 进行SHA224算法加密 |
hashlib.sha256() | 进行SHA256算法加密 |
hashlib.sha384() | 进行SHA384算法加密 |
7.4 示例
import hashlib
m1 = hashlib.md5('hello python'.encode(encoding='utf-8')) # 构建MD5对象
print(m1.hexdigest()) # 结果为: e5d3024684c9be1dd3f6114ecc8bbdddc
sh224 = hashlib.sha224("hello python".encode('utf-8'))
print(sh224.hexdigest())
sh256 = hashlib.sha256("hello python".encode('utf-8'))
print(sh256.hexdigest())
sh384 = hashlib.sha384("hello python".encode('utf-8'))
print(sh384.hexdigest())
#结果输出:
e53024684c9be1dd3f6114ecc8bbdddc
7f78ad20eff5afc21166e6a5e22962a2819bd28d335ba95ff414b3f5
373a23512f9531ad49ec6ad43ecdda58df01e59d9ec5812d601fd05cc53345d3
eaf44aabb38c34ff948e714b9c3c08f3fed996d74fc9f1225d7368ccb386465df272e55912041921eddf13b51aff833c
8.json
8.1 作用
编码或解码json对象
8.2 导入
import json
8.3 常用方法及说明
方法 | 说明 |
json.dumps() | 将python对象转化成json字符串 |
json.loads() | 将json字符串转化为python对象 |
json.dump() | 将python对象转化成json字符串并存入文件 |
json.load() | 从文件读取字符串转化成python对象 |
8.4 示例
import json
# 1.字符串(json) --> 字典
color = '{"1":"red","2":"green","3":"blue","4":"black"}'
color_dict = json.loads(color)
print("color_dict:",color_dict)
# 2.字典 --> json
color_json = json.dumps(color_dict)
print("color_json:",color_json)
# 3.(json)文件 --> 字典
with open("color.json") as f:
dt = json.load(f)
print("dt:",dt)
# 4.dict --> (json)文件
with open("color1.json","w") as f1:
json.dump(dt,f1) #将python字典数据写入color1.json
#输出 :
color_dict: {'1': 'red', '2': 'green', '3': 'blue', '4': 'black'}
color_json: {"1": "red", "2": "green", "3": "blue", "4": "black"}
dt: {'1': 'red', '2': 'green', '3': 'blue', '4': 'black'}
9.pickle
9.1 作用
用于序列化的模块
9.2 导入
import pickle
9.3 常用方法及说明
方法 | 说明 |
pickle.dumps() | 将数据通过特殊的形式转换为只有python语言认识的字符串 |
pickle.loads() | 将pickle数据转换为python的数据结构 |
pickle.dump() | 将数据通过特殊的形式转换为只有python语言认识的字符串,并写入文件 |
pickle.load() | 从数据文件中读取数据,并转换为python的数据结构 |
9.4 示例
import pickle
# 1.序列化
color = ["red","green","blue","black"]
color_byte = pickle.dumps(color)
print("color_byte:",color_byte)
# 反序列化即字节转列表(python数据类型)
color_obj = pickle.loads(color_byte)
print("color_obj:",color_obj)
class Person():
def __init__(self,name,age):
self.name = name
self.age = age
p = Person('zhangsan',21)
# 3.持久化到文件
with open("color.txt","wb") as f:
dt = pickle.dump(p,f)
# 4. 从文件读取数据
with open("color.txt","rb") as f:
p_data = pickle.load(f)
print(p_data)
#输出 :
color_byte: b'\x80\x03]q\x00(X\x03\x00\x00\x00redq\x01X\x05\x00\x00\x00greenq\x02X\x04\x00\x00\x00blueq\x03X\x05\x00\x00\x00blackq\x04e.'
color_obj: ['red', 'green', 'blue', 'black']
<__main__.Person object at 0x03A4B050>
10.shutil
10.1 作用
主要用于文件或目录的复制或归档的操作
10.2 导入
import shutil
10.3 常用方法及说明
方法 | 说明 |
shutil.copy('源文件','目标地址') | 复制文件 |
shutil.copy2('源文件','目标地址') | 复制文件,暴露元数据 |
shutil.copyfileobj(open('源文件','r'),open('目标文件','w')) | 讲一个文件的内容拷贝到另外一个文件当中 |
shutil.copyfile('源文件','目标文件') | 将一个文件的内容拷贝到另外一个文件中 |
shutil.copytree('源目录','目标目录') | 复制整个目录 |
shutil.copymode() | 拷贝权限 |
shutil.copystat() | 拷贝元数据(状态) |
shutil.rmtree() | 移除整个目录,无论是否为空 |
shutil.move('源地址','目标地址') | 移动文件或文件夹 |
shutil.which('命令字符串') | 检测命令对应的文件路径 |
shutil.disk_usage('盘符') | 检测磁盘使用信息 |
shutil.make_archive('目标文件路径','归档文件后缀','需要归档的目录') | 归档函数,归档操作 |
shutil.unpack_archive('归档文件路径','解包目标文件夹') | 解包操作 |
shutil.get_archive_formats() | 获取当前系统已注册的归档文件格式(后缀) |
shutil.get_unpack_formats() | 获取当前系统已经注册的解包文件格式(后缀) |
10.4 示例
import shutil
shutil.copy('abc.txt','bcd.txt')
shutil.copy2('abc.txt','ddd.txt')
# 基于文件流的复制,目标文件必须存在
with open("abc.txt","rb") as f ,open("ddd.txt","wb") as s:
shutil.copyfileobj(f,s)
shutil.copyfile('abc.txt','acc.txt') # 目标文件无须存在
shutil.copymode('abc.txt','acc.txt') # 仅拷贝权限,内容,组,用户均不变,目标文件必须存在
# 文件夹压缩,不可压缩文件
shutil.make_archive("a1","zip","E:\project\demo2801")
# 备注 :以上都直接形成文件
因篇幅有限,故另外一部分放在下一篇文章 。
- 上一篇:厉害了,监控程序 监控系统程序
- 下一篇:「内网渗透」记一次靶机实战 靶机flag
相关推荐
- PS小技巧 调整命令,让人物肤色变得更加白皙 #后期修图
-
我们来看一下如何去将人物的皮肤变得更加的白皙。·首先选中图层,Ctrl键加J键复制一层。·打开这里的属性面板,选择快速操作删除背景,这样就会将人物进行单独的抠取。·接下来在上方去添加一个黑白调整图层,...
- 把人物肤色提亮的方法和技巧
-
PS后期调白肤色提亮照片的方法。一白遮百丑,所以对于Photoshop后期来说把人物肤色调白是一项非常重要的任务。就拿这张素材图片来说,这张素材图片人脸的肤色主要偏红、偏黄,也不够白皙,该怎样对它进行...
- 《Photoshop教程》把美女图片调成清爽色彩及润肤技巧
-
关注PS精品教程,每天不断更新~~室内人物图片一般会偏暗,人物脸部、肤色及背景会出现一些杂点。处理之前需要认真的给人物磨皮及美白,然后再整体润色。最终效果原图一、用修补工具及图章工具简单去除大一点的黑...
- PS后期对皮肤进行美白的技巧
-
PS后期进行皮肤美白的技巧。PS后期对皮肤进行美白的技巧:·打开素材图片之后直接复制原图。·接下来直接点击上方的图像,选择应用图像命令。·在通道这里直接选择红通道,混合这里直接选择柔光,然后点击确定。...
- 493 [PS调色]调模特通透肤色
-
效果对比:效果图吧:1、光位图:2、拍摄参数:·快门:160;光圈:8;ISO:1003、步骤分解图:用曲线调整图层调出基本色调。用可选颜色调整图层调整红色、黄色、白色和灰色4种颜色的混合比例。用色彩...
- 先选肤色再涂面部,卡戴珊的摄影师透露:为明星拍完照后怎么修图
-
据英国媒体12月17日报道,真人秀明星金·卡戴珊终于承认,她把女儿小北P进了家族的圣诞贺卡,怪不得粉丝们都表示这张贺卡照得非常失败。上周,这位39岁的女星遭到了一些粉丝针对这张照片的批评,她于当地时间...
- 如何在PS中运用曲线复制另一张照片的色调
-
怎样把另一张作品的外观感觉,套用到自己的照片上?单靠肉眼来猜,可能很不容易,而来自BenSecret的教学,关键是在PS使用了两个工具,让你可以准确比较两张照片的曝光、色调与饱和度,方便你调整及复制...
- PS在LAB模式下调出水嫩肤色的美女
-
本PS教程主要使用Photoshop使用LAB模式调出水嫩肤色的美女,教程调色比较独特。作者比较注重图片高光部分的颜色,增加质感及肤色调红润等都是在高光区域完成。尤其在Lab模式下,用高光选区调色后图...
- 在Photoshop图像后期处理中如何将人物皮肤处理得白皙通透
-
我们在人像后期处理中,需要将人物皮肤处理的白皙通透,处理方法很多,大多数都喜欢使用曲线、磨皮等进行调整,可以达到亮但是不透,最终效果往往不是很好,今天就教大家一种如何将任务皮肤处理得白皙通透,希望能帮...
- PS调色自学教程:宝宝照片快速调通透,简单实用!
-
PS调色自学教程:宝宝照片快速调通透。·首先复制图层,然后选择进入ACR滤镜,选择曲线锁定照片的亮部,也就高光位置,其他部位补亮一点,尤其是阴影的部位补亮多一些,让画面的层次均匀一点。·然后回到基本项...
- 【干货】如何利用PS进行人物美化
-
人物图像美化在Photoshop中非常常用,Photoshop作为一款功能强大的图像处理软件,不仅可以对人像进行基本的调色、美化和修复等处理,还可以改变人物的线条和幅度,如调整脸部器官和脸型的大小、调...
- 教大家一种可以快速把肤色处理均匀的方法@抖音短视频
-
快速把肤色处理均匀的方法。今天教大家一种可以快速把肤色处理均匀的方法。像这张照片整体肤色走紫红色,但是局部偏黄缘处理起来非常的麻烦。其实我们只需要新建空白图层,图层混合模式更改为颜色,再选择画笔工具把...
- PS调色教程 利用RAW调出干净通透的肤色
-
要么不发,要么干货。后期教程来噜~用RAW调出干净通透的肤色。这次终于不会原片比PS后好看了吧。如果你依然这么觉得,请不要残忍的告诉我这个事实,泪谢TAT)附送拍摄花絮,感谢各位的支持更多风格请关注m...
- photoshop后期皮肤变白的技巧
-
PS后期皮肤变白的技巧。1.PS后期让皮肤变白的方法有很多种,接下来教你一种非常简单容易上手的方法。2.打开素材图片之后,直接在小太极下拉框的位置添加一个纯色调整图层,颜色设置一个纯白色,点击...
- Photoshop调出人物的淡雅粉嫩肤色教程
-
本教程主要使用Photoshop调出人物的淡雅粉嫩肤色教程,最终的效果非常的通透迷人,下面让我们一起来学习.出自:86ps效果图:原图:1、打开原图复制一层。2、用Topaz滤镜磨皮(点此下载)。3、...
- 一周热门
- 最近发表
- 标签列表
-
- ps像素和厘米换算 (32)
- ps图案在哪里 (33)
- super().__init__ (33)
- python 获取日期 (34)
- 0xa (36)
- super().__init__()详解 (33)
- python安装包在哪里找 (33)
- linux查看python版本信息 (35)
- python怎么改成中文 (35)
- php文件怎么在浏览器运行 (33)
- eval在python中的意思 (33)
- python安装opencv库 (35)
- python div (34)
- sticky css (33)
- python中random.randint()函数 (34)
- python去掉字符串中的指定字符 (33)
- python入门经典100题 (34)
- anaconda安装路径 (34)
- yield和return的区别 (33)
- 1到10的阶乘之和是多少 (35)
- python安装sklearn库 (33)
- dom和bom区别 (33)
- js 替换指定位置的字符 (33)
- python判断元素是否存在 (33)
- sorted key (33)