小编emc*_*cek的帖子

为什么某些 Python 包名称与其导入名称不同?

一些包是使用与 PyPI 上包的名称不同的字符串导入的,例如:

$ pip list | grep -i "yaml\|qt"  
PyYAML      3.13               
QtPy        1.5.2
Run Code Online (Sandbox Code Playgroud)
  • pyyaml (pip install pyyaml),但导入 yaml
  • qtpy (pip install qtpy),是的,导入是 qtpy 但包是 QtPy

一些工具无法处理,例如 sphinx:

$ make html
WARNING: autodoc: failed to import module 'wireshark' from module 'logcollector.plugins'; the following exception was raised:
No module named 'qtpy'
Run Code Online (Sandbox Code Playgroud)

我现在不记得了,但是对于扫描requirements.txt文件并打印yaml未安装包的警告的工具也是如此(但它是,它的名称是 pyyaml)。

python pip pyyaml python-sphinx qtpy

6
推荐指数
2
解决办法
1647
查看次数

编译python 3.6后缺少_socket

我尝试使用以下命令编译 python3.6:

emc@belvedere:~/py36/Python-3.6.0rc1> ./configure --prefix=/home/emc/py36 --with-system-expat --with-system-expat --with-system-ffi --disable-ipv6 && make && make install
Run Code Online (Sandbox Code Playgroud)

编译成功我可以开始解释了:

emc@belvedere:~/py36/bin> ./python3.6
Python 3.6.0rc1 (default, Dec 14 2016, 13:08:45) 
[GCC 4.8.1 20130909 [gcc-4_8-branch revision 202388]] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 
Run Code Online (Sandbox Code Playgroud)

但:

emc@belvedere:~/py36/bin> pip3.6 
Traceback (most recent call last):
  File "/home/emc/py36/lib/python3.6/site-packages/pip/_vendor/requests/packages/__init__.py", line 27, in <module>
    from . import urllib3
  File "/home/emc/py36/lib/python3.6/site-packages/pip/_vendor/requests/packages/urllib3/__init__.py", line 8, in <module>
    from .connectionpool import (
  File "/home/emc/py36/lib/python3.6/site-packages/pip/_vendor/requests/packages/urllib3/connectionpool.py", line 7, in <module>
    from socket import error …
Run Code Online (Sandbox Code Playgroud)

sockets compilation python-import python-3.x

5
推荐指数
1
解决办法
8663
查看次数

在Bash中选择随机变量

我需要来自COLOUR_*的打印值(即CadetBlue)随机变量*我试过"

echo $COLOUR_${NUMBER}
echo "$COLOUR_${NUMBER}"
Run Code Online (Sandbox Code Playgroud)

和许多其他人都没有工作.

我有打击:

#!/bin/bash
NUMBER=$[ ( $RANDOM % 9 )  + 1 ]
echo $NUMBER

COLOUR_1=AliceBlue
COLOUR_2=AntiqueWhite
COLOUR_3=AntiqueWhite1
COLOUR_4=AntiqueWhite2
COLOUR_5=AntiqueWhite3
COLOUR_6=AntiqueWhite4
COLOUR_7=BlanchedAlmond
COLOUR_8=BlueViolet
COLOUR_9=CadetBlue

echo $COLOUR_$NUMBER
Run Code Online (Sandbox Code Playgroud)

random variables bash

2
推荐指数
2
解决办法
2299
查看次数