Python解释器路径寻找规则
Python编辑器路径寻址总结
Python编程优化

这场表演邀请了三位角色:run.sh、main.py、path.sh,拍摄场地选在了 Windows -> Git Bash
群演1号 run.sh
#!/usr/bin bash
. ./path.sh || exit -1
# demo.py无法直接找到是因为 $PATH中已经没有 工作目录
python demo.py
跳转到的地方
群演2号 path.sh
export PYTHONPATH=$PWD/define_module
export PATH="/d/Anaconda"
#export PATH="/d/Anaconda":$PWD
群演3号 demo.py
#coding=utf-8
import sys
# sys.path.append("/d/Anaconda/envs/py39/Lib/site-package/torch")
# print(sys.version, sys.path)
if __name__ == "__main__":
print('demo')
Python编程优化
文件 IO对象嵌套
import io
with open(path , mode , encoding) as fin:
with open(path2 , mode , encoing ) as fout :
for line in fin :
...
fout.write()
数组 List
pop(index) # index不指定,则删除最后一个
from functools import reduce
reduce(func , iterable , initializer=None) # func常以lambda展示 iterable可迭代对象 initializer不指定则以迭代对象第一个值为初始值
双向队列 Queue使用,来自于标准库collections.deque
from collections import deque
#初始化
d = deque('init') | d = deque(['i','n','i','t'])
# 新增API
pop()/popleft() append()/appendleft() extendleft
交换两变量值a,b = b,a
python 字符串替换(正则)
# 正则方式
import re
re.sub(r'匹配规则source', after_str , target_str , count=0 )
#replace
new_str = target_str.replace('匹配项', '替换项' , count=-1)
# count 代表替换的次数,-1代表替换所有的 符合的字符串
python 寻找解释器顺序:
外层指定:**/**/python *.py文件 则前面路径的python则为使用的解释器
# !usr/bin/python 如果上述解释器未指定,则从执行py文件头部这行代码(如果有的话)进行寻找
# $PATH/$PYTHONPATH(寻找python模块的地方) windows则在环境变量中查找
3种for循环遍历list 方式:
for item in list:
for index in range(len(list)):
for item,index in enumerate(list):
3种for循环遍历 dict 方式:
for key in dict:
for key in dict.keys():
for value in dict.values():
for item in dict.items():
for key,item in dict.items():
pycharm配置远程调试 : https://www.cnblogs.com/lhx9527/p/16023075.html
python多线程打印:
import multiprocessing
import time
import os
def func(args):
print("in func :", os.getpid())
time.sleep(1)
return args * args
def func2(nn):
print(nn, "in func2 :", os.getpid())
if __name__ == "__main__":
p = multiprocessing.Pool(5)
for i in range(10):
p.apply_async(func, args=(i, ), callback=func2)
p.close()
p.join()
如何在shell中运行python字符串代码:
python -c '''
import random
from sys import argv
for f in [1,2]:
arr = open(argv[f]).readlines()
random.Random(argv[3]).shuffle(arr)
with open(argv[f] + "-sf", "w", encoding = "utf8") as fout:
for line in arr:
fout.write(line)
''' $scp $text $4
str.split() # 当不指定分隔符时,以空格类字符(space ,tab等)最大数量分割
参考:
https://jarvisma.gitbook.io/pythonlearn/5.4-python-mo-kuai-hua/chapter5.4.2
https://blog.csdn.net/qq_38156052/article/details/81130117
https://blog.csdn.net/qq_27825451/article/details/100552739
https://blog.csdn.net/NeverLate_gogogo/article/details/107615838
http://www.coolpython.net/python_senior/module_concept/modify-sys-path.html
Python解释器路径寻找规则的更多相关文章
- 【python】如何将ipdb的python解释器路径切换至虚拟环境中
背景: 利用virtualenv构建一个python3.5的虚拟环境,在该虚拟环境中使用ipdb调试程序,结果报错找不到某一个模块. 程序的所有依赖模块都已经成功安装在虚拟环境中. 在虚拟环境中,te ...
- Python_01 执行方式、解释器路径、编码、变量、条件语句
1.第一句python --文件后缀名可以是任意? --导入模块时,如果不是.py会报错 ==>文件后缀名是.py 2.两种执行方式 python解释器 py文件路径 python 进入解释器: ...
- Sublime Text编辑器配置Python解释器简易教程
前天在微信上遇到一个小伙伴问我一个关于Sublime text配置Python解释器的问题,可能是初学者,对这方面还不是很懂,想使用快捷键但是徒劳一场,因为缺少Python解释器,直接按下快捷键Ctr ...
- python 解释器交互模块 -- sys
sys模块是与python解释器交互的一个接口 sys.argv 命令行参数List,第一个元素是程序本身路径 sys.getdefaultencoding(): 获取系统当前编码,一般默认为asci ...
- python解释器安装和变量配置
python解释器安装 第一步https://www.python.org/ 下载 python-3.6.6 和 python-2.7.16 俩个版本 Downloads 下 选windows版本 4 ...
- 编程语言分类 + python解释器的安装 + jupyter的使用(day 02整理)
目录 一.昨日内容回顾 一 计算机基础之编程 (一) 什么是编程语言 (二) 什么是编程 (三) 为什么编程 二 计算机组成 (一) CPU (二) 存储器 (三) I/O设备 (四) 多核CPU ( ...
- 《python解释器源码剖析》第13章--python虚拟机中的类机制
13.0 序 这一章我们就来看看python中类是怎么实现的,我们知道C不是一个面向对象语言,而python却是一个面向对象的语言,那么在python的底层,是如何使用C来支持python实现面向对象 ...
- 从入门到自闭之Python解释器安装
Python解释器的安装 1 下载 下载地址:https://www.python.org 选择windows平台的链接进行下载 https://www.python.org/downloads/ ...
- 《python解释器源码剖析》第9章--python虚拟机框架
9.0 序 下面我们就来剖析python运行字节码的原理,我们知道python虚拟机是python的核心,在源代码被编译成字节码序列之后,就将有python的虚拟机接手整个工作.python虚拟机会从 ...
随机推荐
- pinia 入门及使用
自上月从上海结束工作回来 在家闲来无事 想写点东西打发时间 也顺便学习学习新的技术.偶然发现了 pinia 据说比vuex好用些 所以便搭了个demo尝试着用了下 感觉确实不错,于是便有了这篇随笔. ...
- 聊聊 C++ 右值引用 和 移动构造函数
一: 背景 最近在看 C++ 的右值引用和移动构造函数,感觉这东西一时半会还挺难理解的,可能是没踩过这方面的坑,所以没有那么大的深有体会,不管怎么说,这一篇我试着聊一下. 二: 右值引用 1. 它到底 ...
- 在Linux虚拟机中添加多个固定ip地址
1.右键点击设置2.点击添加,再点击网络适配器,最后点击完成.3.选择完成后的网络适配器,选择仅主机模式.4.用roott身份登录,用nmtui进行设置 systemctl start Network ...
- CentOS 定时计划任务设置
一.安装crontab服务并设置开机自启 yum install crontabs (centos默认就会带,一般不需要安装) systemctl enable crond (设为开机启动) syst ...
- Go语言基础一:环境配置与基础语法
配置开发环境 开始使用Go,首先需要一个完善的开发环境. 下载并安装Go 安装包的下载地址为:https://golang.org/dl/ go语言中文社区下载:https://studygolang ...
- 缓冲流的原理和BufferedOutputStream字节缓冲输出流
缓冲流的原理 BufferedOutputStream字节缓冲输出流 package com.yang.Test.BufferedStudy; import java.io.BufferedOutpu ...
- netdata检测工具的安装与使用
Netdata 是一款 Linux 性能实时监测工具..以web的可视化方式展示系统及应用程序的实时运行状态(包括cpu.内存.硬盘输入/输出.网络等linux性能的数据). Netdata文档地址: ...
- Yii ACF(accessController)简单控权
use yii\filters\AccessControl; class SiteController extends Controller { public function behaviors() ...
- 还在用Alpine作为你Docker的Python开发基础镜像?其实Ubuntu更好一点
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_173 一般情况下,当你想为你的Python开发环境选择一个基础镜像时,大多数人都会选择Alpine,为什么?因为它太小了,仅仅只有 ...
- Vue 内置指令 && 自定义指令
1 <!DOCTYPE html> 2 <html> 3 <head> 4 <meta charset="UTF-8" /> 5 & ...