社区所有版块导航
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
反馈   公告   社区推广  
产品
短视频  
印度
印度  
私信  •  关注

Rafael Marques

Rafael Marques 最近创建的主题
Rafael Marques 最近回复了
5 年前
回复了 Rafael Marques 创建的主题 » Python:创建一个字典,其中键有多个值

你可以试试这个:

L = [('a','111'),('b','222'),('a','333'),('b','444')]
my_dict = {}

for item in L:
    if item[0] not in my_dict:
        my_dict[item[0]] = []

    my_dict[item[0]].append(item[1])

print(my_dict)

输出:

python your_script.py
{'a': ['111', '333'], 'b': ['222', '444']}

正如@chepner所指出的,您可以使用 defaultdict 到。

defaultdict 您不需要检查您的 dict .

L = [('a','111'),('b','222'),('a','333'),('b','444')]
my_dict = defaultdict(list)

for item in L:
    my_dict[item[0]].append(item[1])

print(my_dict)

以及输出:

defaultdict(<class 'list'>, {'a': ['111', '333'], 'b': ['222', '444']})

迪克特 ,您只需从中创建一个新的dict:

print(dict(my_dict))

输出为:

{'a': ['111', '333'], 'b': ['222', '444']}
5 年前
回复了 Rafael Marques 创建的主题 » 将字符串转换为数组中的python

我想最简单的方法是:

my_list = [["", "", "", ""], ["", "2", "", ""], ["", "", "", ""], ["2", "", "", ""]]
my_new_list = []

for a_list in my_list:
    my_new_list.extend(a_list)

for item in my_new_list:
    print(item)

输出为:

2






2

您可以迭代列表并使用 append 而不是使用 extend :

my_list = [["", "", "", ""], ["", "2", "", ""], ["", "", "", ""], ["2", "", "", ""]]
my_new_list = []

for a_list in my_list:
    for item in a_list:
        my_new_list.append(item)

for item in my_new_list:
    print(item)

正如扎克提到的,你可以看到更多的例子 here (How to make a flat list out of list of lists?)

5 年前
回复了 Rafael Marques 创建的主题 » 有人能帮我解决简单的列表python问题吗?

如果要检查字符是否为数字,可以使用 isdigit 功能

my_list = ["a3", "b3", "aa"]

def erase(lista):
    only_chars = []
    for word in lista:
        result = ''.join([w for w in word if not w.isdigit()])
        if result:
            only_chars.append(result)

    return only_chars


result = erase(my_list)
print(result)

它将打印:

['a', 'b', 'aa']

数字 结合 any :

my_list = ["a3", "b3", "aa"]

def erase(lista):
    only_chars = []
    for word in lista:
        if not any(w.isdigit() for w in word):
            only_chars.append(word)

    return only_chars


result = erase(my_list)
print(result)

现在,结果是:

['aa']