社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

Error - Syntactical Remorse

Error - Syntactical Remorse 最近创建的主题
Error - Syntactical Remorse 最近回复了
5 年前
回复了 Error - Syntactical Remorse 创建的主题 » Python 3.6+:具有相同键但顺序不同的两个字典的相等性

字典是散列表,顺序不重要。在Python3.6+中,字典按插入顺序排列,但这正是它们的实现方式。秩序与平等无关。如果你想让命令在平等中起作用,使用OrderedDict。

from collections import OrderedDict

d1 = OrderedDict({'foo':123, 'bar':789})
d2 = OrderedDict({'bar':789, 'foo':123})

print(d1 == d2) # False
5 年前
回复了 Error - Syntactical Remorse 创建的主题 » 比较不同列表python中两个元组的项

这里有一个更具活力的解决方案。为了得到一个不同的测试用例,我稍微修改了你的输入。这对副本有效,而且在O(N)时间内也有效。

from collections import defaultdict
L1 = [('G', 'T'), ('T', 'T'), ('T', 'U'), ('U', 'I'), ('I', 'P'), ('U', 'I')]
L2 = [('E', 'G'), ('G', 'T'), ('T', 'P'), ('U', 'I')]
S1 = defaultdict(list)
S2 = defaultdict(list)
for indx, element in enumerate(L1):
    S1[element].append(indx)
for indx, element in enumerate(L2):
    S2[element].append(indx)

duplicate_elements = set(S1).intersection(set(S2))
print("Mutual elements:", *[(S1[dup], S2[dup]) for dup in duplicate_elements])

输出:

Mutual elements: ([0], [1]) ([3, 5], [3])
5 年前
回复了 Error - Syntactical Remorse 创建的主题 » 方法返回None,即使在python 3中value不是None[duplicate]

1)永远不要做一般的例外来捕捉所有的东西。

2)用户输入不能使用递归。它无缘无故地消耗堆栈。就用一个 while 循环基本上递归并不是为了在失败时保持重复。它被设计成潜入某物并最终返回。

3)确保代码空间正确。这并没有引起问题,但确实使代码难以阅读。你应该有一个前后运算符的空格(即。 = )逗号后的空格,包含多个元素(即。 (1, 2, 3) )

也就是说,当进行递归时,需要返回递归调用:

class Game:
    def set_val(self):
        try:
            p1 = input("Enter player 1 name:")
            p2 = input("Enter player 2 name:")
            goal = int(input("Enter a number to set goal:"))
            if p1 is None or p2 is None or goal is None:
                print("Please give proper input")
                return self.set_val()
            else:
                print(p1, p2, goal)
                return p1, p2, goal
        except:
            print("Please give proper input")
            return self.set_val()
G = Game()

p1, p2, goal = G.set_val()
print(p1, p2, goal)

还有你的 if 可以缩短为:

if p1 and p2 and goal:
5 年前
回复了 Error - Syntactical Remorse 创建的主题 » 在python中:如何使用指定数量的数字在文件中写入浮点数?

您可以通过以下几种方式执行此操作:

print("%.3f " % my_float_value) # Using formatting for Python2.7

print("{0:.3f} ".format(my_float_value)) # Using modern string formatting

print(f"{my_float_value:.3f}") # A newer form of string formatting
5 年前
回复了 Error - Syntactical Remorse 创建的主题 » python中的局部变量问题,变量未定义

x 在本地范围内 func1 ,因此无法从中读取 func2 . 你可以使用 global x = 1 但我不推荐。反而通过 X 函数2 :

def func1():
    x = 1
    return x
def func2(x):
    y = 5
    z = x + y # You had this backwards as well (i.e. x + y = z)
    print(z)
x = func1()
func2(x)