0%

python_4_常用技巧

简介

  • python中常用的技巧

python3 获取当前路径

在 Python3 中,可以使用标准库模块 ospathlib 来获取当前路径。以下是两种方式的详细用法:


方法一:使用 os 模块

1. 获取当前工作目录(运行脚本时所在的目录)

1
2
3
4
import os

current_path = os.getcwd()
print("当前工作目录是:", current_path)

2. 获取当前脚本文件所在的目录

1
2
3
4
import os

script_dir = os.path.dirname(os.path.abspath(__file__))
print("当前脚本所在目录是:", script_dir)

方法二:使用 pathlib 模块

pathlib 是从 Python 3.4 开始引入的模块,用于处理文件和路径,功能更强大且代码更简洁。

1. 获取当前工作目录

1
2
3
4
from pathlib import Path

current_path = Path.cwd()
print("当前工作目录是:", current_path)

2. 获取当前脚本文件所在的目录

1
2
3
4
from pathlib import Path

script_dir = Path(__file__).resolve().parent
print("当前脚本所在目录是:", script_dir)

两者的区别

  1. os.getcwd()Path.cwd() 获取的是工作目录(运行脚本时的目录),与脚本文件本身的存储路径无关。
  2. os.path.dirname(os.path.abspath(__file__))Path(__file__).resolve().parent 获取的是脚本文件的实际存储路径。

如果你运行脚本时,工作目录和脚本文件目录不一致,需要特别注意选择合适的方法。

python 执行scp命令

在 Python 中执行 SCP 命令可以使用 paramiko 库,这是一个用于SSH2的Python库,支持SSH会话和文件传输。以下是一个示例,演示如何使用 paramiko 实现在 Python 中执行 SCP 命令:

首先,确保你已经安装了 paramiko 库。如果没有安装,你可以使用 pip 来安装它:

1
pip install paramiko

接下来,以下是一个简单的 Python 示例代码,演示如何使用 paramiko 执行 SCP 命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import paramiko

# 连接 SSH 服务器
ssh = paramiko.SSHClient()
ssh.load_system_host_keys()
ssh.connect('your_server_ip', username='your_username', password='your_password')

# 执行 SCP 命令,将本地文件复制到远程服务器
local_path = '/path/to/local/file.txt'
remote_path = '/path/to/remote/file.txt'

# 使用 SCPClient 实现文件传输
scp = ssh.open_scp()
scp.put(local_path, remote_path) # 本地文件复制到远程服务器
scp.close()

# 关闭 SSH 连接
ssh.close()

上述代码中的 your_server_ip 是远程服务器的 IP 地址,your_username 是用于 SSH 登录的用户名,your_password 是对应的密码。local_path 是本地文件的路径,remote_path 是远程服务器上的目标路径。

这个示例展示了如何使用 paramiko 库创建一个 SSH 连接并使用 SCP 在本地和远程服务器之间传输文件。根据你的实际情况,你可能需要更改相应的路径和凭据信息。

感谢老板支持!敬礼(^^ゞ