小编Jim*_*ard的帖子

os.getenv()不断返回None

我似乎无法让我的代码响应自定义环境变量,因此我编写了一段代码对其进行测试。getenv没有将我在BASH中设置的环境变量提取到我的python代码中。您能提供的任何帮助将不胜感激。

$ FRUSTRATION="PYTHON!!"
$ echo FRUSTRATION
PYTHON!!
export FRUSTRATION
ipython
import os
very_frustrated = os.getenv("FRUSTRATION")
print(very_frustrated)
None
Run Code Online (Sandbox Code Playgroud)

python getenv python-3.x

4
推荐指数
2
解决办法
1万
查看次数

如何使用函数的输出作为函数内另一个函数的输入

我目前正在学习Python,并希望有人可以帮助我.我对编码很新,所以如果它解释得很好会非常有用.

假设我有一个函数调用function1返回:

return (row, column)
Run Code Online (Sandbox Code Playgroud)

现在我正在编写另一个名为say的函数function2.在这个函数中,我需要调用say:

exampleItem.exampleName(row, column, name)
Run Code Online (Sandbox Code Playgroud)

我如何使用function1行和列的输出作为上一行中的rowcolumn参数function2

我真的希望这是有道理的,因为我之前没有正确地写一个问题而受到严重的惩罚,因为我没有意识到这里的最佳做法.

python arguments function python-3.x

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

如何使用2个拆分参数拆分字符串?

例:

r="\\%4l\\%(wit.*wit\\)\\|\\%8l\\%(rood.*rood\\)\\|\\%12l\\%(blauw.*blauw\\)\\|\\%13l\\%(wit.*wit\\)\\|\\%14l\\%(blauw.*blauw\\)\\|\\%15l\\%(wit.*wit\\)\\|\\%16l\\%(wit.*wit\\)\\|\\%17l\\%(rood.*rood\\)\\|\\%19l\\%(wit.*wit\\)\\|\\%21l\\%(blauw.*blauw\\)"
Run Code Online (Sandbox Code Playgroud)

我想将字符串拆分为一个列表,但不使用1个参数而是使用2个参数.

  • 首先,我想先捕捉这个数字 l\\%(
  • 其次我想在\\%(和之间捕获文本,\\)\\|或者在\\%(和之间的字符串结尾处捕获文本\\)$

输出:

[[4, "wit.*wit"], [8, "rood.*rood"], [12, "blauw.*blauw"], [13, "wit.*wit"], [14, "blauw.*blauw"], [15, "wit.*wit"], [16,"wit.*wit"], [17, "rood.*rood"], [19, "wit.*wit"], [21, "blauw.*blauw"]]
Run Code Online (Sandbox Code Playgroud)

我尝试的是将字符串拆分为,\\|然后用每个不需要的字符替换"".

有没有更好的方法在Python中执行此操作?

python regex split list python-3.x

4
推荐指数
1
解决办法
110
查看次数

在具有导入函数的模块上使用 pydoc

我已经创建了自己的模块X。一开始,我从其他一些模块(例如from math import func)导入函数。我注意到,当我创建文档时:

pydoc -w X
Run Code Online (Sandbox Code Playgroud)

生成的文件还包含从math模块中导入的函数函数,这是不可取的(尤其是当我从多个模块中导入许多函数时,我就是这样做的)。

可以通过调用来避免它:

import math
Run Code Online (Sandbox Code Playgroud)

但在这种情况下,我必须导入所有函数,然后使用math.func而不是仅调用它们func

有没有另一种方法可以避免使用导入的函数填充我的文档,同时仍然能够使用from.

python import module pydoc

3
推荐指数
1
解决办法
1582
查看次数

urllib.urlencode:TypeError不是有效的非字符串序列或映射对象

我试图运行以下代码,但它给我以下错误:

Traceback (most recent call last):  File "put_message.py", line 43, in <module>translatedWord=getTranslatedValue(source_lang,source_word,dest_lang,apiKey)  File "put_message.py", line 22, in getTranslatedValue
    source_word=urllib.urlencode(source_word)
  File "/usr/lib/python2.7/urllib.py", line 1318, in urlencode
    raise TypeError
TypeError: not a valid non-string sequence or mapping object
Run Code Online (Sandbox Code Playgroud)

我的计划如下:

用于将数据从一种语言转换为另一种语言的脚本

import MySQLdb
import json
import urllib, urllib2
import requests
from pprint import pprint
import sys


def getTranslatedValue(source_lang,source_word,dest_lang,apiKey):


    source_word=urllib.urlencode(source_word)   
    url='https://www.googleapis.com/language/translate/v2?key=%s&q=%s&source=%s&target=%s',(apiKey,source_word,source_lang,dest_lang)
    j = urllib2.urlopen(url)
    j_obj = json.load(j)
    j.close()
    translatedText=j_obj['data']['translations'][0]['translatedText']
    return translatedText


# Open database connection
db = MySQLdb.connect(host,user,password)

# prepare a cursor object using …
Run Code Online (Sandbox Code Playgroud)

python urllib

3
推荐指数
1
解决办法
8786
查看次数

sympy.geometry Point 类运行缓慢

我有一个读取非结构化网格的代码。我围绕以下几何实体编写了包装器sympy.geometry

class Point:
    def __init__(self, x, y, parent_mesh):
        self.shape = sympy.geometry.Point(x,y)
        self.parent_mesh = parent_mesh
        self.parent_cell = list()
Run Code Online (Sandbox Code Playgroud)

一切工作正常,但sympy.geometry.Point每个 的初始化都需要花费大量时间Point。实际上,代码还没有执行完数千点。用 C++ 编写的类似代码只需几秒钟即可完成。如果没有它,代码就足够快了(我删除了它并计时)。我读到一个可能的原因可能是sympy.geometry为了精度而将浮点数转换为有理数。有没有办法(标志)来加速,sympy.geometry因为我不需要精确的精度?

python sympy python-3.x

3
推荐指数
1
解决办法
813
查看次数

打印字符串中的所有字符

有没有办法打印python中的所有字符,即使是那些通常不打印的字符?

例如

>>>print_all("skip
 line")
skip\nline
Run Code Online (Sandbox Code Playgroud)

python string

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

如何使用getattr从同一个文件中调用函数?

在我的节目,我有25个不同的功能命名"task1""task2""task3",等...此刻我可以从一个单独的文件中对这些函数调用,并做他们的外壳:

import examplefilename
tasknum = str(input("Which task would you like to see? "))
task = "task" + tasknum
methodToCall = getattr(examplefilename, task)
result = methodToCall()
Run Code Online (Sandbox Code Playgroud)

尽管我所做的只能从另一个文件中调用,所以如何从同一文件中以这种方式执行功能呢?

python function python-3.x

3
推荐指数
1
解决办法
808
查看次数

__sizeof__没有被sys.getsizeof调用

我正在用Python写一个动态数组实现(类似于内置列表类),为此我需要观察容量的增长(每次达到限制时都会增加一倍).为此,我有以下代码,但输出很奇怪.看起来好像sys.getsizeof()永远不会叫我的班级__sizeof__().出于测试目的,我正在进行__sizeof__()返回0,但是根据sys.getsizeof()它是非零的.

有什么收获?

import ctypes

class DynamicArray(object):
    '''
    DYNAMIC ARRAY CLASS (Similar to Python List)
    '''

    def __init__(self):
        self.n = 0 # Count actual elements (Default is 0)
        self.capacity = 1 # Default Capacity
        self.A = self.make_array(self.capacity)

    def __len__(self):
        """
        Return number of elements sorted in array
        """
        return self.n

    def __getitem__(self,k):
        """
        Return element at index k
        """
        if not 0 <= k <self.n:
            return IndexError('K is out of bounds!') …
Run Code Online (Sandbox Code Playgroud)

python class python-3.x

3
推荐指数
1
解决办法
308
查看次数

接下来发电机不会在最后一次通话时恢复

为什么第二次next不回来"bye"

def salute():
    yield "hello"
    yield "bye"


def greet_me():
    print(next(salute()))
    print(next(salute()))

greet_me()
Run Code Online (Sandbox Code Playgroud)

输出:

你好

你好

python generator python-3.x

3
推荐指数
1
解决办法
39
查看次数

标签 统计

python ×10

python-3.x ×7

function ×2

arguments ×1

class ×1

generator ×1

getenv ×1

import ×1

list ×1

module ×1

pydoc ×1

regex ×1

split ×1

string ×1

sympy ×1

urllib ×1