精华内容
下载资源
问答
  • python用逗号分隔字符串
    千次阅读
    2020-12-31 03:37:38

    我在列表中有一组字符串,我从CSV文件中读取它,它看起来像这样:

    myList = ('17.0.1.34', '17.1.182.21', '714'),('203.84.210.248', '27.111.228.3', '10310'),('202.73.40.45', '27.111.228.6', '18106'),...

    我想将它存储到一个有三个字段的数据库(Django)中:

    fieldOne = '17.0.1.34', '203.84.210.248','202.73.40.45', ....

    fieldTwo = '17.1.182.21', '27.111.228.3', '27.111.228.6', ...

    fieldThree = '714', '10310', '18106',...

    我该怎么办?

    最佳答案 你有一个3元组的列表:

    myList = [

    (a1, b1, c1),

    (a2, b2, c2),

    (a3, b3, c3),

    ...

    ]

    您想将此列表重构为三个变量:

    fieldOne = [a1, a2, a3, ...]

    fieldTwo = [b1, b2, b3, ...]

    fieldThree = [c1, c2, c3, ...]

    您可以使用列表推导来执行此操作:“通过从myList的每个元素中获取第k个值来创建列表”.这看起来像这样:

    fieldOne = [i[0] for i in myList] # k = 0

    fieldTwo = [i[1] for i in myList] # k = 1

    fieldThree = [i[2] for i in myList] # k = 2

    当然,如果你的元组长度可变,这会变得更复杂 – 但这些是基础知识,你可以根据需要随意使用它们来解决你的问题.

    更多相关内容
  • python中拆分逗号分隔字符串

    千次阅读 2021-03-17 12:21:14
    如果有递归嵌套表达式,可以在逗号上拆分,并验证它们是否与pyparsing匹配:import pyparsing as ppdef CommaSplit(txt):''' Replicate the function of str.split(',') but do not split on nested expressions or ...

    如果有递归嵌套表达式,可以在逗号上拆分,并验证它们是否与pyparsing匹配:import pyparsing as pp

    def CommaSplit(txt):

    ''' Replicate the function of str.split(',') but do not split on nested expressions or in quoted strings'''

    com_lok=[]

    comma = pp.Suppress(',')

    # note the location of each comma outside an ignored expression:

    comma.setParseAction(lambda s, lok, toks: com_lok.append(lok))

    ident = pp.Word(pp.alphas+"_", pp.alphanums+"_") # python identifier

    ex1=(ident+pp.nestedExpr(opener='')) # Ignore everthing inside nested '< >'

    ex2=(ident+pp.nestedExpr()) # Ignore everthing inside nested '( )'

    ex3=pp.Regex(r'("|\').*?\1') # Ignore everything inside "'" or '"'

    atom = ex1 | ex2 | ex3 | comma

    expr = pp.OneOrMore(atom) + pp.ZeroOrMore(comma + atom )

    try:

    result=expr.parseString(txt)

    except pp.ParseException:

    return [txt]

    else:

    return [txt[st:end] for st,end in zip([0]+[e+1 for e in com_lok],com_lok+[len(txt)])]

    tests='''\

    obj<1, 2, 3>, x(4, 5), "msg, with comma"

    nesteobj<1, sub<6, 7>, 3>, nestedx(4, y(8, 9), 5), "msg, with comma"

    nestedobj<1, sub<6, 7>, 3>, nestedx(4, y(8, 9), 5), 'msg, with comma', additional<1, sub<6, 7>, 3>

    bare_comma<1, sub(6, 7), 3>, x(4, y(8, 9), 5), , 'msg, with comma', obj<1, sub<6, 7>, 3>

    bad_close<1, sub<6, 7>, 3), x(4, y(8, 9), 5), 'msg, with comma', obj<1, sub<6, 7>, 3)

    '''

    for te in tests.splitlines():

    result=CommaSplit(te)

    print(te,'==>\n\t',result)

    印刷品:

    ^{pr2}$

    当前行为就像'(something does not split), b, "in quotes", c'.split','),包括保留前导空格和引号。从字段中去掉引号和前导空格很简单。在

    将try下的else更改为:else:

    rtr = [txt[st:end] for st,end in zip([0]+[e+1 for e in com_lok],com_lok+[len(txt)])]

    if strip_fields:

    rtr=[e.strip().strip('\'"') for e in rtr]

    return rtr

    展开全文
  • 我想使用PyQtGraph绘制数据,所以我试图将从传感器读取的字符串(288个逗号分隔的值)转换为Numpy数组。不过,我尝试了几种不同的方法,但都没有成功。从传感器读取此代码非常有用:#Read the line of data from the ...

    我在Python 3中使用PySerial从Arduino传感器读取数据。

    我想使用PyQtGraph绘制数据,所以我试图将从传感器读取的字符串(288个逗号分隔的值)转换为Numpy数组。不过,我尝试了几种不同的方法,但都没有成功。

    从传感器读取此代码非常有用:#Read the line of data from the sensor

    line = sensor.readline()

    #Decode the line to UTF-8 and print it

    lineDecoded = line.decode("UTF-8")

    print(lineDecoded)

    它给出了正确的输出(288个逗号分隔的值):137,136,151,145,141,133,145,139,140,145,144,139,143,141,139,136,137,138,137,127,142,135,136,137,134,140,127,141,134,128,139,135,136,180,149,147,147,151,156,140,153,143,143,155,163,164,192,250,277,282,275,258,258,248,245,231,215,225,195,195,159,186,175,168,171,173,177,185,213,224,228,231,227,219,261,229,231,231,250,253,262,276,269,274,274,277,276,272,291,303,351,417,483,500,473,399,315,263,255,239,238,244,234,231,231,242,255,272,294,293,299,314,307,306,302,310,319,304,312,327,370,464,507,514,492,425,358,327,313,299,292,291,281,259,245,232,229,224,223,222,216,226,215,211,197,202,199,197,198,193,198,185,190,196,177,198,188,183,201,193,187,159,189,184,186,185,186,185,184,196,195,200,201,198,193,241,189,186,167,179,187,174,188,180,179,169,177,173,172,175,181,175,171,180,175,176,180,184,176,190,182,172,171,179,178,174,188,175,178,167,183,171,168,174,175,171,230,175,177,159,177,170,172,171,173,168,167,169,172,168,171,177,173,167,167,171,163,170,177,172,169,167,163,157,173,161,168,174,162,165,171,165,162,152,165,173,158,193,161,161,147,159,161,159,169,173,168,158,161,159,158,171,167,167,155,159,169,156,159,162,157,165,161,158,147,161,171,159,

    从那开始,我想我可以把lineDecoded传递给PyQtGraph的plot函数,但是在运行这行代码之后x = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288]

    y = [lineDecoded]

    #Plot the data

    pg.plot(x, y)

    我得到了错误Exception: X and Y arrays must be the same shape--got (288,) and (1,).

    在将字符串传递给PyQtGraph之前,我尝试了使用各种方法(如np.fromstring(lineDecoded)和np.array(list(lineDecoded)).ravel())来转换字符串,但我尝试过的方法都不起作用。

    有什么办法可以做到这一点吗?

    编辑:我已经浏览了所有答案,但似乎都不起作用,每个答案的注释中都有详细信息。任何暗示都很好。

    展开全文
  • 数据: 11,"American President, The (1995)",Comedy|Drama|Romance 分割后理想情况: 11 "American President, The (1995)" ...实际单纯split分割后 11 "American President The (1995)" Comedy|Drama|Romance ...

    数据:

    11,"American President, The (1995)",Comedy|Drama|Romance
    

    分割后理想情况:

    11
    "American President, The (1995)"
    Comedy|Drama|Romance
    

    实际单纯用split分割后

    11
    "American President
    The (1995)"
    Comedy|Drama|Romance
    

    怎么解决引号内不分割?
    方法如下:

        fp = open(item_file, encoding='UTF-8')
        for line in fp:
            lex = shlex.shlex(line)
            lex.whitespace=','
            lex.quotes='"'
            lex.whitespace_split = True
            itemlist=list(lex)
            if len(itemlist) < 3:
                continue
            [itemid, title, genres] = itemlist[0],itemlist[1],itemlist[2]
    
    ['11','"American President, The (1995)"', 'Comedy|Drama|Romance\n']
    
    展开全文
  • S.split([sep [,maxsplit]]) -> 由字符串分割成的列表 返回一组使用分隔符(sep)分割字符串形成的列表。如果指定最大分割数,则在最大分割时结束。如果分隔符未指定或者为none,则分隔符默认为空格。注意:分隔符不...
  • 我想使用PyQtGraph绘制数据,因此尝试将从传感器读取的字符串(288个逗号分隔的值)转换为Numpy数组。但是,我尝试了几种不同的方法,但还没有奏效。使用此代码从传感器读取效果很好:#Read the line of data from the...
  • 原标题:奇技淫巧 - Python分割字符串的5个示例在这个Python教程中,我们将学习Python split字符串函数。与len不同,有些函数是特定于字符串的。要使用字符串函数,输入字符串的名称、dot、函数的名称和函数需要的 ...
  • 我猜你用逗号是指反逗号==引号。 然后这个strs = "Hello (Test1 test2) (Hello1 hello2) other_stuff" 你应该明白["Hello (Test1 test2) (Hello1 hello2) other_stuff"] 因为所有的东西都被反逗号包围。最有可能...
  • Python-以逗号分割字符串且忽略引号中的逗号 要处理的问题 我们在读入txt、csv等数据时,经常会需要根据列名将读入的字符串进行分割。比如有如下的一个字符串存放在csv格式的文件中。 Q9UI32,“Glutaminase liver...
  • 今天小编就为大家分享一篇python 将list转成字符串,中间符号分隔的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • python中分隔逗号分隔字符串

    千次阅读 2020-12-15 23:25:54
    我正在寻找的是一种以逗号分隔字符串的方法,这些字符串不在引号或分隔符对中.例如:s1 = 'obj<1, 2, 3>, x(4, 5), "msg, with comma"'应该分为三个元素的列表['obj<1, 2, 3>', 'x(4, 5)', '"msg, with ...
  • a = "dog, cat; cat, dog" b1 = a.split(' ') b2 = a.split('... cat', ' dog'] # ['dog, cat', ' cat, dog'] 猜你喜欢: ⭐【Python】list转str ⭐【Python】字符转换为 ASCII 码 ⭐【Python】判断字符串 str 是否为空
  • 使用字符串时,常见的操作之一是使用给定的分隔符将字符串拆分为子字符串数组。...在下面的示例中,字符串s将使用逗号分隔,作为分隔符。 s = 'Linuxidc.com,linuxidc,LinuxMi' s.split(',') 结果
  • 我得到了这样的格式的字符串:1"Wilbur Smith (Billy, son of John), Eddie Murphy (John), Elvis Presley, Jane Doe (Jane Doe)"因此从根本上讲,它是演员姓名的列表(可选地,其后是括号中的角色)。 角色本身可以...
  • python提取含有逗号字符串中的数字

    千次阅读 2021-07-23 17:31:31
    上面的字符串中,包括一对方括号和几个逗号,现在要去掉方括号和逗号然后把这四个数字存到数组中。 1.去方括号 import re flag = re.findall(r'\[(.*?)\]',flag)#返回list print(flag) 打印出来结果:(打印的list...
  • 下面我们举例一个Python给以逗号分隔的每个字符串拼接字符串 例如给如下两个 test_1 = “8080,443,80” test_2=“2021” 字符串拼接TCP与_的字符串。 def protocol_port(name: str,ports): """ :param name: 要...
  • 字符串分割,将一个字符串分裂成多个字符串组成的列表,可以理解为字符串转列表,经常会用到 语法:str.split(sep, [,max]),sep可以指定切割的符号,max可以指定切割的次数(次数不常用) 不带参数时以空格进行...
  • 如果第一部分不匹配(即没有引号括起来的字符串),第二部分([^\r\n\t\f ,]+)匹配所有不是空格或逗号的内容。所以它将忽略您的分隔符,但匹配所有其他内容。在import rerows = [""" 5,'THISMORE"THAN4','/,',4.....
  • 把区间或逗号分割字符转换为list。
  • ss = '[75 0 0 0 0 0]' ss = ss.replace('[', '').replace(']', '').split(' ') print(ss) res = [int(s) for s in ss if s != ''] print(res) ['75', '', '0', '', '0', '', '0', '', '0', '', '0'] ...
  • 参见英文答案 >How to convert a string list into an integer in python 6个我想将整数列表存储为模型中的字段.由于Django默认没有为此提供字段,因此我使用名为x的...在我看来,然后我接受这个字符串并从中创建一个...
  • python去掉字符串之间的逗号

    千次阅读 2022-03-18 06:09:27
    >>> n = '123,456,789' >>> n1 = n.replace(',','') >>> print(n1) 123456789
  • 您可以使用内置拆分功能:from pyspark.sql.functions import col, splitdf = sc.parallelize([(1, "200, 201, 202"), (1, "23, 24, 34, 45"), (1, None),(2, "32"), (2, None)]).toDF(["id", "ev"])df.select(col(...
  • shlex模块解决方案允许转义的引号,一个引号逃避另一个,所有花哨的东西shell支持。>>> import shlex>>> my_splitter = shlex.shlex('''foo, bar, "one, two", three four''', posix=True)>>> my_splitter.white...
  • 我有一个字符串,表示一个使用逗号分隔数千的数字。 如何将其转换为python中的数字?>>> int("1,000,000")生成ValueError。在我尝试转换它之前,我可以字符串替换逗号,但不知何故感觉不对。 有没有更...
  • 问题:有一组字符串需要转换为元组,每个值之间用逗号隔开。 a = "中文,英文,N003,N004,N005" b = tuple(a.split(",")) print(b) >>>('中文', '英文', 'N003', 'N004', 'N005') 使用别的符号隔开也可以...
  • Python字符串分割方法总结

    千次阅读 2021-01-14 23:06:15
    Python字符串分割的常用方法是直接调用字符串的str.split方法,但是其只能指定一种分隔符,如果想指定多个分隔符拆分字符串需要用到re.split方法(正则表达式的split方法)。str.split字符串的split方法函数原型如下...
  • python逗号分割列表

    千次阅读 2021-06-21 09:05:28
    #按逗号分割列表 str = ',' seq = ['a','b','c','d'] print(str.join(seq))
  • list1 = [1,2,3,4] str = ','.join(list1) print(str) 会输出1,2,3,4 但我们想输出'1','2','3','4' 可以运行下面的代码 list1 = [1,2,3,4] str = ','.join("'{0}'".format(x) for x in case_id_list) ...
  • python字符串按照逗号分割为list

    千次阅读 2020-08-05 17:19:05
    本身是一个长字符串字符串 执行后成为list b[3]['group_wxindex'][0]['wxindex_str'].split(',')

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 58,752
精华内容 23,500
热门标签
关键字:

python用逗号分隔字符串