暂无个人介绍
2021年02月
python3 -m pip install PyPDF2
报错原因是方法中的参数为转义字符。
Python-Pillow升级到最新版本
设置虚拟环境做隔离,让不同的安装版本python有不用的运行环境,建议使用conda,耦合度低,可使用库和版本较多。
brew install python
https://blog.csdn.net/github_36601823/article/details/69218197
在~/.bash_profile文件里添加 alias python="/usr/local/bin/python3" 或者自己的安装目录
pip install tensorflow==2.0
在.bashrc设置 alias python='/usr/bin/python3.5'
或者设置sudo ln -s /usr/bin/python3.5 /usr/bin/python
ImportError:一般是文件或库的目录没有设置
myclass=dict()
split_list='Carlos Guestrin1,CIS 41A,4.5,A,BUS 55,5,A,BUS 18,5,B+,HUMI 16,4,A-'.split(",",maxsplit=1)
myclass[split_list[0]]=split_list[1]
print(myclass)
{'Carlos Guestrin1': 'CIS 41A,4.5,A,BUS 55,5,A,BUS 18,5,B+,HUMI 16,4,A-'}
palette = np.array( [ [0,0,0], # black
... [255,0,0], # red
... [0,255,0], # green
... [0,0,255], # blue
... [255,255,255] ] ) # white
image = np.array( [ [ 0, 1, 2, 0 ], # each value corresponds to a color in the palette
... [ 0, 3, 4, 0 ] ] )
palette[image] # the (2,4,3) color image
array([[[ 0, 0, 0],
[255, 0, 0],
[ 0, 255, 0],
[ 0, 0, 0]],
[[ 0, 0, 0],
[ 0, 0, 255],
[255, 255, 255],
[ 0, 0, 0]]])
import pathlib
path = "usr/local/bin"
p = pathlib.Path(path)
result = p.parts
print(list(result))
['usr', 'local', 'bin']
1 提供源码,别人直接import
2 把自己的代码封装成包,别人可以通过pip install 安装,可以有效保护源码
python是胶水语言,方便快捷开发算法,验证算法的有效性。在python验证后可以在使用c++写一遍。
python2已经停止维护,当然是python3
__iadd__(self, other)
实现加法赋值操作。
Python中没有像C++中public和private这些关键字来区别公有属性和私有属性。它是以属性命名方式来区分,如果在属性名前面加了2个下划线'__',则表明该属性是私有属性,否则为公有属性(方法也是一样,方法名前面加了2个下划线的话表示该方法是私有的,否则为公有的)。
class Plane(object):
def __init__(self):
self.mA = 100
self.mB = 200
self.__mC = 300
p = Plane()
但是类的方法可以封装__私有属性,如下可以通过Student.get_name访问self.__name
class Student(object): # 类名的括号里写继承的类,如果没有则写object,这是所有类都要继承的类
school = '清华大学' # 直接在类中定义的属性为类属性,归Student类所有,所有实例都可以访问到,但是与java的静态变量不同,如果一个实例改变了school的值,那么这个新值就生效,且只对这一个实例生效
def __init__(self, name, score): # 只要是class中定义的函数,第一个参数都要写self,并且调用时第一个参数都不必传
# init 是特殊函数,在创建类时会调用,相当于java的构造函数
self.__name = name # 可以直接self.新的变量名,注意,两个下划线开头的变量名为私有变量,不允许外部访问,但可以通过get和set方法访问和赋值
self.__score = score # 以两个下划线开头且以两个下划线结尾的变量为特殊变量,特殊变量不是私有变量,允许外部访问,因此起变量名时不要起成这种特殊变量的格式
def get_name(self):
return self.__name
def get_score(self):
return self.__score
def set_score(self, score):
if 0 <= score <= 100:
self.__score = score
else:
raise ValueError('bad score') # 手动抛出异常
def get_grade(self):
if self.__score >= 90:
return 'A'
elif self.__score >= 60:
return 'B'
else:
return 'C'
conda create --name python35 python=3.5 代表创建一个python3.5的环境,我们把它命名为python35
使用conda activate python35 来激活刚才创建的环境:
尝试使用pip install package来给这个环境安装一个常用的包,这些安装包和其他环境是隔离的
使用python set可以使程序更简洁
mylist = ['abc123', 'def456', 'ghi789','ghi123',"123"]
sub = ['123','456']
print(list(set(mylist)-set(sub)))