相关疑难解决方法(0)

Python:组合两个字符串并从中选择唯一元素

我想说我对编程和 Python 都是新手。在发布这个问题之前,我确实尝试过进行研究,但我对基础知识的缺乏无助于产生任何结果,因此需要我在这里提问。

我有两个字符串,如下所示:

 str_a = "100,101,105,304"
 str_b = "400,500,101"
Run Code Online (Sandbox Code Playgroud)

我需要将这些字符串合并为一个,所以我使用:

  str_c = str_a + "," + str_b
Run Code Online (Sandbox Code Playgroud)

我的问题从这里开始。在这个新字符串中,其中的元素(数字)以逗号分隔,我希望每个项目仅列出一次。数字的顺序并不重要,但如果它是升序的,那将是相当惊人的。

我该如何将这两个数字结合起来,每个数字都列出一次,如果可能的话从小到大排序?

由于这些是字符串,我什至不确定是否可以迭代?

我们将非常感谢您的帮助,提前致谢。

python python-2.x python-2.7

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

用 Python 合并 JSON 数据

作为 Python 程序的一部分,我想合并包含相同结构化数据的 JSON 对象。例如:

{
    "responseStatus": "SUCCESS",
    "responseDetails": {
        "total": 5754,
    },
    "data": [
        {
            "id": 1324651
        },
        {
            "id": 5686131
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是将我的section对象的数据数组的内容添加到我的第一个对象的数据数组中。

所以,假设:

thejson1 = json.loads({"responseStatus": "SUCCESS","responseDetails": {"total": 5754,},"data": [{"id": 1324651},{"id": 5686131}]})
thejson2 = json.loads({"responseStatus": "SUCCESS","responseDetails": {"total": 1234,},"data": [{"id": 2165735},{"id": 2133256}]})
Run Code Online (Sandbox Code Playgroud)

我认为执行:

thejson1["data"].append(thejson2["data"])
Run Code Online (Sandbox Code Playgroud)

将 thejson1 扩展为:

{
    "responseStatus": "SUCCESS",
    "responseDetails": {
        "total": 5754,
    },
    "data": [
        {
            "id": 1324651
        },
        {
            "id": 5686131
        },
        {
            "id": 2165735
        },
        {
            "id": 2133256
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

但它所做的是将json2数据作为数组添加到json1的数据数组中:

{ …
Run Code Online (Sandbox Code Playgroud)

python json

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

python list append vs extend for dictionaries

我对列表中的python's append与一些extend应该包含字典的内容有一些混淆:

holder = []

element = {}

element["id"] = 1
element["value"] = 2

holder.append(element)

print(holder)
Run Code Online (Sandbox Code Playgroud)

按预期打印 [{'id': 1, 'value': 2}]

但是,如果我使用:holder.extend(element)而不是holder.append(element)输出将是:['id', 'value']

有人能解释一下为什么吗?(追加与延伸不适用于此)

python dictionary list

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

(Python)将列表添加到另一个没有括号的列表

我目前正在制作我的第一个Python项目 - tic tac toe,因为我认为这将是一个很好的起点,我终于遇到了障碍.

我目前已将电路板设置作为列表 - Board = [1,2,3 ...,9]并重置,Board的内容将被删除并通过单独的列表重新输入,但它也会添加括号.

有没有办法抓住单独的列表的内容,而不是抓住括号?

if newGame == 'Y' or 'y':
     del Board[:]
     Board.append(startBoard)
     print Board #for testing
 else:
     sys.exit('game over')
Run Code Online (Sandbox Code Playgroud)

我得到的是这样的:

[[1,2,3,4,5,6,7,8,9]]
Run Code Online (Sandbox Code Playgroud)

python

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

遍历列表并拆分为一维列表

我试图遍历 python 中的列表并根据字符拆分单词。我想返回一个 1 维列表作为结果。

例子

wordlist = ['border\collie', 'dog\cat', 'horse\hound'] # slash fix
Run Code Online (Sandbox Code Playgroud)

预期结果 new_list = ['border', 'collie', 'dog', 'cat', 'horse', 'hound']

我尝试过的一切都会产生一个二维列表。

def split_slash_words(text):
    new_list = []
    new_list.append([i.split("\\") for i in text])
    return new_list

Run Code Online (Sandbox Code Playgroud)

返回一个二维数组,我也不能重新拆分 new_list (因为它是列表类型)

python regex

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

如何在 Python 中以不同的 n 次重复列表的元素?

这个想法是在每个不同的n时间重复列表的元素,如下所示。

ls = [7, 3, 11, 5, 2, 3, 4, 4, 2, 3]
id_list_fname = ['S11', 'S15', 'S16', 'S17', 'S19', 'S3', 'S4', 'S5', 'S6', 'S9']
all_ls = []
for id, repeat in zip(id_list_fname, ls):
    res = [ele for ele in[id] for i in range(repeat)]
    all_ls.append(res)
Run Code Online (Sandbox Code Playgroud)

因此,我希望结果是一个单一的平面列表,我实现如下。

def flatten(lst):
    for item in lst:
        if isinstance(item, list):
            yield from flatten(item)
        else:
            yield item

final_output = list(flatten(all_ls))
Run Code Online (Sandbox Code Playgroud)

的输出final_output

['S11', 'S11', 'S11', 'S11', 'S11', 'S11', 'S11', 'S15', 'S15', 'S15',
 'S16', …
Run Code Online (Sandbox Code Playgroud)

python iterator list

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

在Python中展平元组列表

我正在使用递归函数来创建通过迷宫的流路径.该函数返回正确的路径元组(row,col),但我需要以元组列表的形式.例如,我需要创建此表单

[(0,0),(1,1),(2,2),(3,3),(4,3)]
Run Code Online (Sandbox Code Playgroud)

但是该函数返回:

[(0, 0), [(1, 1), [(2, 2), [(3, 3), (4, 3)]]]]
Run Code Online (Sandbox Code Playgroud)

这是功能:

def FlowPathAt(fdir,row,col):
    lItem = FlowOut(fdir,row,col)
    if not lItem:
        return (row,col)
    else:
        r,c = lItem
        return [(row,col) ,  FlowPathAt(fdir,r,c)]
Run Code Online (Sandbox Code Playgroud)

FlowOut(fdir,row,col) 是一个函数,它返回从(row,col)开始的下一个单元格地址

有没有办法在构建期间展平此列表?

类似:如何将元组列表展平为pythonic列表

python list

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

使用“ list.extend”时,“ int”对象不可迭代

您好,有人可以提供此代码帮助吗,我在第28行(A.extend(n))遇到错误:“'int'对象不可迭代”,因为我是python的新手,所以我无法找出解决方案的任何帮助被赞赏

编辑:我尝试了更早的追加,并且较早地遇到了内存错误,并且想知道extend()是否是添加元素的正确方法,但似乎我犯了一个错误,并且最终出现了无限循环,谢谢您的建议,它确实对我有所帮助

print("Ax^2+Bx+C")
a = int(input("a"))
b = int(input("b"))
c = int(input("c"))
i, j, k, l = 0, 0, 0, 0
A = []
C = []
B = []
ano = []  
bno = []  
no = 0
noc = 0  
n = 2
a2 = a
c2 = c

if (a != 1) or (b != 1):
while i != 1:
    while a2 % n == 0 and c2 % n == 0:
        if a2 % n == …
Run Code Online (Sandbox Code Playgroud)

python list

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

Python扩展函数的输出是什么意思?

扩展函数的返回值(无)表示什么。

common_birds = ["chicken", "blue jay", "crow", "pigeon"]
birds_seen = ["sparrow", "green finch", "gold finch"]

print (common_birds.extend(birds_seen))
# returns None

common_birds.extend(birds_seen)
print (common_birds)
# returns the extended list
Run Code Online (Sandbox Code Playgroud)

python

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

标签 统计

python ×9

list ×4

dictionary ×1

iterator ×1

json ×1

python-2.7 ×1

python-2.x ×1

regex ×1