小编Daq*_*ker的帖子

python嵌套类

首先,这是我的测试代码,我使用的是python 3.2.x:

class account:
    def __init__(self):
        pass

    class bank:
        def __init__(self):
            self.balance = 100000

        def balance(self):
            self.balance

        def whitdraw(self, amount):
            self.balance -= amount

        def deposit(self, amount):
            self.balance += amount
Run Code Online (Sandbox Code Playgroud)

当我做:

a = account()
a.bank.balance
Run Code Online (Sandbox Code Playgroud)

我希望得到平衡值的回报,而不是我得到的功能"平衡",为什么会这样?我这样做时会返回余额值:

class bank:
    def __init__(self):
        self.balance = 100000

    def balance(self):
        self.balance

    def whitdraw(self, amount):
        self.balance -= amount

    def deposit(self, amount):
        self.balance += amount

a = bank()
a.balance
Run Code Online (Sandbox Code Playgroud)

所以我想知道为什么会这样,如果有人想出办法让我在嵌套版本中获得平衡价值,那就太棒了.

python python-3.x

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

如何计算python中2个日期之间的年份天数

例如:

date 1 : 1 january 2000  
date 2 : 17 november 2006  
Run Code Online (Sandbox Code Playgroud)

我想知道有多少天在今年的1日和2日之间的2000,2001,...,2006年,所以我需要的东西,返回这样的事情(不,如果它在列表或重要的东西):
2000:365,2001:365,...,2006:320

我在互联网上寻找过这样的东西但是只想办法计算两个日期之间的天数/月/年

python datetime

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

python random.shuffle()在while循环中

我有一个清单:

    k = [1,2,3,4,5]
Run Code Online (Sandbox Code Playgroud)

现在我想要将此列表的3个排列列在另一个列表中但是当我这样做时:

    x = []
    i = 0
    while i < 3:
        random.shuffle(k)
        x.append(k)
        i += 1
Run Code Online (Sandbox Code Playgroud)

我的结果是x在x中的相同排列的3倍,如下所示:

    x = [[1,3,5,2,4], [1,3,5,2,4], [1,3,5,2,4]]
Run Code Online (Sandbox Code Playgroud)

而不是我想要的,这样的事情:

    x = [[1,5,4,2,3], [1,3,5,2,4], [5,3,4,1,2]]
Run Code Online (Sandbox Code Playgroud)

请注意,由于收集k中的数据以将k置于循环内部的方式,因此不可能,因为我知道这将解决问题.真正的代码是这样的:

    def create_random_chromosomes(genes):
        temp_chromosomes = []
        chromosomes = []
        i = 0
        while i < 2000:
            print(genes)
            random.shuffle(genes)
            temp_chromosomes.append(genes)
            i += 1
        print(temp_chromosomes)
        for element in temp_chromosomes:
            if element not in chromosomes:
                chromosomes.append(element)
        return chromosomes
Run Code Online (Sandbox Code Playgroud)

python python-3.x

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

Python嵌套列表内部比较和编辑

我一直试图找出一些东西,最简单的解释方法是使用一个例子:

a = [[1, 2, 4], [2, 5], [0, 3, 7, 8], [12, 3, 6], [18, 14]]
Run Code Online (Sandbox Code Playgroud)

这是我开始的那种列表.我需要最终得到一个列表,其中包含包含重叠元素的所有列表的列表.

result = [[1, 2, 4, 5], [0, 3, 6, 7, 8, 12], [14, 18]]
Run Code Online (Sandbox Code Playgroud)

我该怎么做?

亲切的问候,Daquicker

python list python-3.x

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

这是在python中找到sigmoid函数的导数的正确方法吗?

我想出了这段代码:

def DSigmoid(value):  
    return (math.exp(float(value))/((1+math.exp(float(value)))**2))  
Run Code Online (Sandbox Code Playgroud)

a.)这会返回正确的衍生物吗?
b.)这是一种有效的方法吗?

友好的问候,
Daquicker

math

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

这个应该重命名文件的python代码出了什么问题?

这段代码是要求一个目录,然后列出该目录中的al文件,然后将其重命名为它们在该列表中的位置,问题是我总是得到错误2,找不到文件,而如果我打印列表,它显然确实找到了因为列表不是空白的文件.

import os, sys    
path = input("input path: ")    
dirs = os.listdir(path)    
for i in range(0,len(dirs)):    
    os.rename(dirs[i], str(i))
Run Code Online (Sandbox Code Playgroud)

给定输入文件,我想用数字重命名基本文件名,但保留文件扩展名.从而

输入'a.txt','test.txt','test1.txt'

输出'0.txt','1.txt','2.txt'

python

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

为什么不返回给定数字的旋转?

我将尝试用一个例子解释我想要做的事情:

Number = ["1","9","7"]  
Run Code Online (Sandbox Code Playgroud)

所以我希望它返回:

[["1","9","7"],["9","7","1"],["7","1","9"]]  
Run Code Online (Sandbox Code Playgroud)

我得到的是:

[["7","1","9"],["7","1","9"],["7","1","9"]]
Run Code Online (Sandbox Code Playgroud)

出于某些不明原因,它将我的第一个结果替换为最后一个结果.

def Get_Rotations(Number):
    Rotations = []
    x = 0
    while x < len(Number):
        Number.insert(0,Number.pop())
        Rotations.append(Number)
        x += 1
    print(Rotations)
    return Rotations  
Run Code Online (Sandbox Code Playgroud)

python

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

标签 统计

python ×6

python-3.x ×3

datetime ×1

list ×1

math ×1