私信  •  关注

mad_

mad_ 最近创建的主题
mad_ 最近回复了
7 年前
回复了 mad_ 创建的主题 » Python:查找给定数字列表中的每个Fibonacci序列

Idea与@Vuplex非常相似,但是可以使用os.path.commonprefix删除额外的代码来比较两个系列

import os
numlist = list(map(int,input.split(',')))
answer = []
fib_series = [0,1,1,2,3,5,8,13]
answer = []
i = 0
while i < len(numlist):
    if not numlist[i]:
        answer.append(os.path.commonprefix([fib_series,numlist[i:]]))
    i += 1
print(answer) #[[0, 1, 1, 2, 3], [0, 1, 1, 2, 3, 5]]
7 年前
回复了 mad_ 创建的主题 » 在python中拆分响应

只需映射到这样的int

x = '20/2020'
list(map(int,x.split('/'))) #[20, 2020]

此外,你可以参考我之前对类似问题的回答 here

7 年前
回复了 mad_ 创建的主题 » 在python中拆分响应

你能试着这样做吗:

a,b = x.split('/')

只有在拆分后有两个元素时,此操作才有效。

7 年前
回复了 mad_ 创建的主题 » 在python中,不能删除句点''。

join 把你自己从处理剩余空间的麻烦中解救出来 '.'

stopwords = ['to', 'a', 'for', 'by', 'an', 'am', 'the', 
'so', 'it', 'and', 'The']
sent = "The water earth and air are vital"
s_sent=sent.split()
acro = []
for word in s_sent:
    if word not in stopwords:
       acro.append( str.upper(word[:2]))
print('. '.join(acro))

产量

WA. EA. AI. AR. VI

另一个简单的方法是引入一个标志来检查第一个值,然后巧妙地附加 '. ' 在最后一个值的末尾。这样就不会有额外的尾随字符

smart_flag = True
acro = ''
for word in s_sent:
    if word not in stopwords:
        if smart_flag:
            acro=acro+str.upper(word[:2])
            smart_flag=False
        else:
            acro=acro +". " + str.upper(word[:2])           

print(acro)

只是为了完整 acro.rstrip(' .')) 将删除你传入的任何字符。我的意思是它将删除 '' 以及 ' .'

7 年前
回复了 mad_ 创建的主题 » 水平方向的python字典到csv

显而易见的答案已经公布。给麻木打一针。此外,它不考虑订购。

import numpy as np
d={"key1":1,"key2":42,"key3":"foo"}
a=np.array([d.keys()])
b=np.array([d.values()])
x=np.concatenate([a,b],0)

np.savetxt('x.csv',x,delimiter=',',fmt='%s')
7 年前
回复了 mad_ 创建的主题 » 如何在python中替换doctype元素?

我想知道我们是否可以进行XML操作。在这里,您可以使用字符串操作

a='''<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE note SYSTEM "Note.dtd">
<book>
<name>ABC</name>
</book>'''
lis=a.split('\n')
for i,j in zip(lis,range(len(lis))):
    if i.startswith('<!DOCTYPE'):
        i = '<!--'+i+'-->'
        lis[j]=i
a='\n'.join(lis)

如果它没有什么可分割的。

a='<?xml version="1.0" encoding="utf-8"?><!DOCTYPE note SYSTEM "Note.dtd"><book><name>ABC</name></book>'
str1=""
start=a.index('<!DOCTYPE')
end=a.index('>',start)
str1=a[:start]
str1+='<!--'+'<!DOCTYPE note SYSTEM "Note.dtd">'+'-->'
str1+=a[end+1:]
str1 #'<?xml version="1.0" encoding="utf-8"?><!--<!DOCTYPE note SYSTEM "Note.dtd">--><book><name>ABC</name></book>'
6 年前
回复了 mad_ 创建的主题 » 如何从Python类中的实例变量中获取所有值的列表

使用 getattr 再次访问类变量

[getattr(HTTP_HEADERS,m) for m in members]

产量

['X-Accept', 'X-Decline']
7 年前
回复了 mad_ 创建的主题 » 使用python pandas根据多个条件选择行

您应该能够通过下面的示例解决您的问题。你的语法在多种情况下是错误的

import pandas as pd    
df=pd.DataFrame({'FL_DATE':['5/1/2017'],'ORIGIN':['ATL'],'DEST':['IAD'],'DEP_TIME':[1442]})
df.loc[(df['FL_DATE'] == '5/1/2017') & (df['ORIGIN'] == 'ATL') & (df['DEST'] == 'IAD')]

给予

DEP_TIME    DEST    FL_DATE     ORIGIN
1442        IAD     5/1/2017    ATL

你应该把你的代码改成这样

df.loc[(df['FL_DATE'] == date) & (df['ORIGIN'] == 'ATL') & (df['DEST'] == destination)]
7 年前
回复了 mad_ 创建的主题 » 如何将机器学习算法与数据库连接起来

这取决于结果的延迟。如果您希望它立即在数据库中保存数据,那么当您收到请求时,必须立即创建一个API。由于这些文件本质上是日志文件,所以我建议在本地存储日志,并每天插入一次日志,以减少一段时间内的网络拥塞。如果您现有的API已经连接到DB,那么我认为不需要为一个简单的 post 呼叫

7 年前
回复了 mad_ 创建的主题 » 没有in的python列表理解

计数器将返回类似字典的结构。所以需要迭代键和值,键是x,值是count。如果我们仔细观察 c.items()

c.items() #list of tuples with (key,value)

[('and', 1),
 ('a', 1),
 ('lie', 3),
 ('is', 2), # x->'is' ,count->2
 ('There', 1),
 ('only', 1),
 ('passion', 1),
 ('piece', 1)]

所以,如果您正在为一个元组迭代这个列表,那么有两个组件:一个单词和相关的计数。为了计数,你正在检查 count>=2 如果是,则返回列表组件中为x的键