云计算、AI、云原生、大数据等一站式技术学习平台

网站首页 > 教程文章 正文

实用主义 Python 一行命令走天涯(命令行执行python)

jxf315 2025-04-11 00:03:31 教程文章 15 ℃

今天分享一些既实用又高效的 Python 单行代码或者命令,涵盖了文件操作、数据处理、网络请求这些常常会碰到的场景,能够帮你迅速把问题给解决掉:

继续淦


1. 文件与系统操作

  • 启动一个 HTTP 服务器(共享当前目录)
python3 -m http.server 8000  # 端口可自定义
  • 批量重命名文件(后缀 .txt 改为 .md
import os; [os.rename(f, f.replace('.txt', '.md')) for f in os.listdir() if f.endswith('.txt')]
  • 递归搜索目录下所有含关键词的文件
import os, sys; [print(f) for root, _, files in os.walk('.') for f in files if open(os.path.join(root, f)).read().find('KEYWORD') != -1]

2. 数据处理与转换

  • 读取 CSV 文件并计算某列平均值
import csv; print(sum(float(row[2]) for row in csv.reader(open('data.csv')) if row) / sum(1 for _ in open('data.csv')))
  • JSON 格式化输出(从字符串或文件)
python3 -m json.tool < data.json  # 终端直接格式化
  • 将列表按第二列排序(假设列表为 data
sorted_data = sorted([(1, 'b'), (3, 'a'), (2, 'c')], key=lambda x: x[1])

人生苦短

3. 网络与 API 交互

  • 发送 HTTP GET 请求并打印响应
import requests; print(requests.get('https://api.example.com').text)
  • 下载文件并保存到本地
import urllib.request; urllib.request.urlretrieve('http://example.com/file.zip', 'file.zip')
  • 解析 HTML 获取所有链接(需安装 bs4
import requests, bs4; print([a['href'] for a in bs4.BeautifulSoup(requests.get('http://example.com').text, 'html.parser').find_all('a')])

4. 数学与算法

  • 生成斐波那契数列前 N 项
n=10; print([x if x<2 else (lambda f: f(f, x))(lambda f, x: f(f, x-1)+f(f, x-2)) for x in range(n)])
  • 列表去重并保持顺序
items = [3, 2, 2, 1, 4]; unique = list(dict.fromkeys(items))
  • 快速求 1~100 偶数的平方和
print(sum(x**2 for x in range(1, 101) if x % 2 == 0))

5. 快捷工具与技巧

  • 生成随机密码(8 位字母数字)
import random, string; print(''.join(random.choices(string.ascii_letters + string.digits, k=8)))
  • 时间戳转换(秒 → 可读时间)
import datetime; print(datetime.datetime.fromtimestamp(1622505600).strftime('%Y-%m-%d %H:%M:%S'))
  • 压平嵌套列表
nested = [[1,2], [3,4]]; flat = [item for sublist in nested for item in sublist]

6. 单行魔法技巧

  • 单行循环 + 条件判断
["Even" if i%2==0 else "Odd" for i in range(5)]  # 输出: ['Even', 'Odd', 'Even', 'Odd', 'Even']
  • Lambda 表达式实现阶乘
factorial = lambda n: 1 if n == 0 else n * factorial(n-1)
  • map 快速处理列表
list(map(lambda x: x*2, [1,2,3]))  # 输出: [2,4,6]

注意事项

  • 部分代码需要第三方库(如 requests, bs4),需提前 pip install
  • 单行代码虽简洁,但可读性可能降低,复杂逻辑建议拆分。
  • 文件操作注意路径和权限问题,必要时添加异常处理。

掌握这些单行技巧,Python 也能成为你的“瑞士军刀”!

还是那句话:干中学,学中干

如果觉得不错的话,麻烦点个关注,收藏谢谢。

毕竟:

我太想进步了

Tags:

最近发表
标签列表