python-从查询结果中获取字符串的一部分

胜利者

我有一个小脚本,可以从查询中下载结果并将其导出到.csv

yy = raw_input("Enter year: ")
mm = raw_input("Enter month: ")

try:

    conn = psycopg2.connect("dbname='xxx' user='xxx' host='xxx' password='xxx'")
    cur=conn.cursor()

 query1 = """SELECT name FROM xxx where name like '%{0}_{1}%' """.format(yy,mm)
        cur.execute(query1)
        results = cur.fetchall()
        for row in results:
        print row

csv_file = open('errors.csv','wb')# wb - query importing line by line
myFile = csv.writer(csv_file)
myFile.writerows(results)
csv_file.close()

我需要的是查询结果中字符串的一部分。Atm我的结果看起来像这样:

1-GRB-804_2016_02_03__08_42_12
1-GRB-804_2016_02_05__11_04_47
1-GRB-804_2016_02_06__08_20_15
1-GRB-804_2016_02_08__08_06_13
1-GRB-804_2016_02_08__08_30_58

我想要的是获得第一行,直到它遇到符号“ _”为止。因此结果将是:

1-GRB-804
1-GRB-804
1-GRB-804
1-GRB-804
1-GRB-804

问候

Arcturus B

您希望将所有内容保留到第一个“ _”,只需使用string.split

>>> s = '1-GRB-804_2016_02_03__08_42_12'
>>> s.split('_')
['1-GRB-804', '2016', '02', '03', '', '08', '42', '12']
>>> s = s.split('_')[0]
>>>> s
'1-GRB-804'

因此,在您的情况下,您需要执行以下操作:

for row in results:
    print row.split('_')[0]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

从python的列中获取字符串的一部分

Django Python:无法获取字符串的一部分

在python中,如何从数组元素中获取字符串的一部分

在python中提取字符串的一部分

在python中通过正则表达式提取字符串的一部分

如何在python中的多行字符串中的两个子字符串之间提取字符串的一部分

如何从 Python 中的 Pandas DataFrame 中删除字符串的一部分

Python正则表达式提取字符串的一部分

在Python中删除带有坐标的字符串的一部分

在Python中删除用点号分隔的字符串的最后一部分

在Python 3中删除字符串的一部分

Python 3用dict中的数据替换字符串的一部分

在python中替换第一部分字符串的单词

在Python中替换字符串的一部分?

在Python中替换字符串的一部分?

如何在python数组中查找字符串的一部分

在python中剪切一部分字符串变量(网络抓取)

在python列表中替换字符串的一部分

如何在python列表中删除字符串的一部分?

Python中的连接顺序错误,并覆盖了字符串的一部分

Python:修改.cfg文件中的一部分字符串

Python 根据列表中的条件更改字符串的一部分

获取python slice来反转字符串的仅一部分顺序(在字符串中交换连续字符)?

Python - 如何根据字符串的一部分从字符串列表中创建子列表?

如何检查解析行中的字符是否是python中字符串变量的一部分

根据另一列(Python Pandas)的值在列中添加一部分字符串

在python中按字符串條件提取列表中字典的一部分

从 Python 中的字符串的一部分中删除重复项的简单方法是什么?

用python中数据帧中的值替换字符串的一部分