Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/353.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python秩和元组_Python_Tuples_Rank - Fatal编程技术网

Python秩和元组

Python秩和元组,python,tuples,rank,Python,Tuples,Rank,我尝试从配置文件中读取列表: import re from configobj import ConfigObj config = ConfigObj('food.conf') meal_list = config['MainConfig']['MealList'] 配置中的MealList部分看起来像Turkey | Hamburger | Chicken等 在此之后,我需要逐一运行: for meal in meal_list: if re.search( config[meal]

我尝试从配置文件中读取列表:

import re
from configobj import ConfigObj
config = ConfigObj('food.conf')
meal_list = config['MainConfig']['MealList']
配置中的
MealList
部分看起来像
Turkey | Hamburger | Chicken

在此之后,我需要逐一运行:

for meal in meal_list:
    if re.search( config[meal][ingredients]['Allowlist'], badingredients, re.M|re.I):
我的第一个问题来了。我如何正确地加入它们?因为在这个
部分之后,我将它们传递给一个秩函数。那么,如何将“允许的”元组连接到一个元组中呢?
秩也在配置文件的中定义

meal_allowed = ('Hamburger', 2),('Chicken', 3),('Turkey', 4)

food = sorted(meal_allowed, key=lambda student: student[1])
food_to_eat = str(food).translate(None, "-[]()'0123456789").replace(" ",      "").replace(",,",",")
print food_to_eat
简而言之,如何使用.join()并将其转换为元组

编辑 我正在寻找的另一个例子

meals = 'hamburger', 'Turkey', 'Chicken'
for meal in meals:
 rank = config[meal][rank]
 if re.search( config[meal][ingredients]['Allowlist'], badingredients, re.M|re.I):
  eatable = meal + meal + rank
可吃的食物应该是('Hamburger',2),('Chicken',3),('Turkey',4)种形式。 否则我不能给它排名。

这就是你想要的吗

meal_allowed = tuple(('Hamburger', 2), ('Chicken', 3), ('Turkey', 4))
编辑:

对于每顿饭

meals = ['hamburger', 'Turkey', 'Chicken']
for meal in meals:
    rank = config[meal][rank]
您必须在
rank=config[mean][rank]
中定义什么是
rank
变量。在此之后,您可以构建元组列表,如:

eatable = list()
meals = ['hamburger', 'Turkey', 'Chicken']
for meal in meals:
    rank = config[meal][rank]
    if re.search( config[meal][ingredients]['Allowlist'], badingredients, re.M|re.I):
        eatable.append((meal, rank))

print eatable

不管怎样,你不应该说“可食用”而不是“可食用”吗?或者他们都是对的^^

您希望实现的确切输出是什么?它是允许的
膳食的
元组
还是要吃的
食物的
元组
?我添加了另一个示例,可以更好地解释我在寻找什么。我输入了错误的秩,它应该是['rank',],因为这是配置文件中的一个部分。但是eatable.append((膳食,等级))就是我要找的。@tsjk我说过最初的归属是不正确的,但实际上是;我不知道,但python只使用逗号将条目转换为元组,因此
a='a','b','c'
a=('a','b','c')
a=tuple('a','b','c')
相同。很高兴你成功了!实际上,排序功能根本不起作用。获取类型错误:“列表”对象不可调用。我的等级代码是这样的。已排序(可吃,键=可吃(1))