我正在用Python写一个git pre-commit钩子,我想定义一个像.gitignore文件一样的黑名单,以便在处理文件之前检查文件。有没有一种简单的方法来检查是否根据一组.gitignore规则定义了文件?这些规则有点神秘,我宁愿不必重新执行它们。
我正在尝试使用Python将a转换list为a dictionary,我需要帮助提出一个简单的解决方案.我想要转换的列表如下所示:
inv = ['apples', 2, 'oranges', 3, 'limes', 10, 'bananas', 7, 'grapes', 4]
Run Code Online (Sandbox Code Playgroud)
我想创建一个dictionary从这里开始list,其中偶数位置的项目(苹果,橙子,酸橙,香蕉,葡萄)是keys,而奇数位置(2,3,10,7,4)中的项目是values.
inv_dict = {'apples':2, 'oranges':3, 'limes':10, 'bananas':7, 'grapes':4}
Run Code Online (Sandbox Code Playgroud)
我尝试使用类似于enumerate计算项目位置的东西,然后如果它是偶数,则将其设置为key.但后来我不确定如何将以下数字与正确的项目相匹配.
我正在尝试确定一个大的给定列表是否具有相同的连续元素.
所以我们说吧
lst = [1, 2, 3, 4, 5, 5, 6]
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我将返回true,因为有两个连续的元素lst[4]和lst[5],是相同的值.
我知道这可能是通过某种循环组合来完成的,但我想知道是否有更有效的方法来做到这一点?
如何将列表转换为元组列表?元组由列表的偶数和奇数索引处的元素组成.例如,我有一个列表[0, 1, 2, 3, 4, 5],需要转换为[(0, 1), (2, 3), (4, 5)].
我能想到的一种方法如下.
l = range(5)
out = []
it = iter(l)
for x in it:
out.append((x, next(it)))
print(out)
Run Code Online (Sandbox Code Playgroud) 我已经看了几个问题迭代列表中的每两个元素和 Python"Every Other Element"成语,他们已经得到了一个答案,我可能会被迫使用,但我觉得有一个更好的方法; 我想用下面的代码做的是能够打印每两个或每4个元素
Gun_rack =(
'Gun 1:', 'Colt New Frontier 44 Special', 'Cal:.44 ', 'Weight: 2.8 lbs', 'Ammo Capacity :6',
'Gun 2:', 'Smith & Wesson SW1911DK' , 'Cal:.45 ACP ', 'Weight: 2.6 lbs', 'Ammo Capacity :9',
'Gun 3:', 'Heckler & Koch P2000SK V2', 'Cal.357 ', 'Weight: 1.50 lbs', 'Ammo Capacity :13',
'Gun 4:', 'Magnum Research Desert Eagle', 'Cal.50 ', 'Weight: 4.46 lbs', 'Ammo Capacity :7',
'Gun 5:', 'Heckler & Koch MP5K ', 'Cal 9mm ', …Run Code Online (Sandbox Code Playgroud) 运行
L = [1,2,3,4,5,6]
print zip(L,L[1:])[::2]
Run Code Online (Sandbox Code Playgroud)
[(1, 2), (3, 4), (5, 6)]
Run Code Online (Sandbox Code Playgroud)
相反,zip(或其他)语句会产生什么
[1, 2, None, 3, 4, None, 5, 6, None]
Run Code Online (Sandbox Code Playgroud)
?
更新
一开始就没关系
L = [(1,2),(3,4),(5,6)]
Run Code Online (Sandbox Code Playgroud)
只要声明仍然是(快速)单行.
UPDATE2
插入None的一个用例是快速绘制段.
我希望从以下字符串中提取元组列表:
text='''Consumer Price Index:
+0.2% in Sep 2020
Unemployment Rate:
+7.9% in Sep 2020
Producer Price Index:
+0.4% in Sep 2020
Employment Cost Index:
+0.5% in 2nd Qtr of 2020
Productivity:
+10.1% in 2nd Qtr of 2020
Import Price Index:
+0.3% in Sep 2020
Export Price Index:
+0.6% in Sep 2020'''
Run Code Online (Sandbox Code Playgroud)
我在该过程中使用“import re”。
输出应类似于:[('Consumer Price Index', '+0.2%', 'Sep 2020'), ...]
我想使用 re.findall 函数来生成上述输出,到目前为止我有这个:
re.findall(r"(:\Z)\s+(%\Z+)(\Ain )", text)
Run Code Online (Sandbox Code Playgroud)
我先识别“:”之前的字符,然后识别“%”之前的字符,然后识别“in”之后的字符。
我真的不知道如何继续。任何帮助,将不胜感激。谢谢!
做这个的最好方式是什么:
>>> replace2([1, 2, 3, 4, 5, 6])
[2, 1, 4, 3, 6, 5]
Run Code Online (Sandbox Code Playgroud) 我有一个Python列表,我希望反转列表中的每对元素.这是清单:
list_ty = ['many_ord','many','12_FH_Temp_ord','12_FH_Temp','Celsius_ord','Celsius','Pressure_Pas_ord','Pressure_Pas','Kelvin_ord','Kelvin']
Run Code Online (Sandbox Code Playgroud)
这是我想得到的:
list_out = ['many','many_ord','12_FH_Temp','12_FH_Temp_ord','Celsius','Celsius_ord','Pressure_Pas','Pressure_Pas_ord','Kelvin','Kelvin_ord']
Run Code Online (Sandbox Code Playgroud)
附加信息:
列表中总会有偶数个元素.
结束的项目_ord将始终位于项目之前_ord.
题:
有没有办法扭转每个项目的结束顺序_ord和以下(相关)项目没有_ord?
我有很多列表,与气象站提供的列表完全相同.
但是,我如何将两个日常观察"合并"为一个?(第一组日常观察中可用的记录永远不会出现在第二组上).
['82294', '04/03/2002', '0000', '', '30.9', '', '', '', '26.1', '93', '1.554', '']
['82294', '04/03/2002', '1200', '24', '', '22', '', '', '', '', '', '']
['82294', '05/03/2002', '0000', '', '29.9', '', '', '', '25.62', '92.5', '0.863333', '']
['82294', '05/03/2002', '1200', '11', '', '23.2', '', '', '', '', '', '']
['82294', '06/03/2002', '0000', '', '31.6', '', '', '', '27.12', '87.5', '1.381333', '']
['82294', '06/03/2002', '1200', '0.2', '', '22.6', '', '', '', '', '', '']
['82294', '07/03/2002', '0000', '', '32.2', '', …Run Code Online (Sandbox Code Playgroud) 我有一个类似以下的列表:
some_list = [
'fullname',
'John Kroes',
'email',
'johnkroes1978@example.com',
'password',
'3kKb5HYag'
]
Run Code Online (Sandbox Code Playgroud)
如何将其转换为如下所示的词典?
some_dict = {
'fullname': 'John Kroes',
'email': 'johnkroes1978@example.com',
'password': '3kKb5HYag'
}
Run Code Online (Sandbox Code Playgroud)
我尝试使用嵌套循环来完成此操作,但是我不知道如何先记下键,然后记下其值。
我还在循环之前创建了一个临时变量,然后在其中写下了当前循环元素,并尝试在try中将其用作值。
我有2个列表:其中1个是列表列表.他们如下─
lists_of_lists = ['1', '4', '7', '13', '16', '21', '32', '36'],['3', '6', '8', '14', '22', '26', '31', '40']
just_a_list =['THEQUICKBROWNFOXJUMPEDOVERTHELAZYDOG', 'IWOULDLOVETOGETOVERWITHTHISASSOONASPOSSIBLE']
Run Code Online (Sandbox Code Playgroud)
lists_of_lists用于对just_a_list的元素进行切片,以便:
['1', '4', '7', '13', '16', '21', '32', '36']将对字符串进行切片'THEQUICKBROWNFOXJUMPEDOVERTHELAZYDOG',如下所示
'1' - '4' - 'HEQU'
'7' - '13' - 'KBROWNF'
'16' - '21' - 'JUMPED'
'32' - '36' - 'ZYDOG'
Run Code Online (Sandbox Code Playgroud)
要点 -
每个列表中
list_of_lists都有偶数个数字.
i'th位置中的列表list_of_lists将属于位于其中的i'th位置的字符串just_a_list.
请帮助我如何执行上述过程..
谢谢
python ×13
list ×6
python-2.7 ×3
python-3.x ×2
csv ×1
dictionary ×1
git ×1
gitignore ×1
iteration ×1
loops ×1
performance ×1
regex ×1
reverse ×1
string ×1
text-mining ×1
tuples ×1