簡體   English   中英

如何在Python 2.7.2中獲取一串數字並使每個數字成為列表中自己的元素?

[英]How do I take a string of numbers in Python 2.7.2 and make each number its own element in a list?

我有一串數字。 我想將每個數字插入到列表中,其中每個數字都是列表中自己的元素,因此我可以使用For循環搜索該數字。 在下面的代碼中,我編寫了一個示例:

string = "3, 4, 5, 99"

a_list = []

a_list.append(string)

for i in range (0, len(a_list)):
    if int(a_list[i]) == 99:
        print "yes 99 is in here"

我想要循環打印“ yes 99 is here”,因為是這樣。 我認為代碼的問題是整個字符串在列表中被列為元素0(唯一的元素)。 請幫忙!! 我知道這是基本知識,但是我無法在線找到解決方案。 我是編程新手。

您需要分析字符串以將每個數字分開,因為它是自己的元素。 幸運的是,Python對此表示支持。

>>> a_list= string.split(", ")
>>> a_list
['3', '4', '5', '99']
l = map(int, s.split(','))
if 99 in l:
    print "yes 99 is in here"

我們正在用逗號分割您的列表,然后將其映射為整數類型。 否則,您將有一個包含字符串的列表。

在第一行之后,您的列表如下所示:

[3, 4, 5, 99]

然后,檢查就像查看列表中是否有99l )一樣簡單。

嘗試

string_list = [float(i) for i in string.split(', ')]

if 99 in string_list:
    print '99 is here'

字符串拆分方法創建單個數字的列表,但它們是字符串。 因此, [float(i) for i in string.split(', ')][float(i) for i in string.split(', ')]將它們全部轉換為浮點數。 如果您知道它們將是整數,或者您希望將它們解釋為整數,則可以使用int(i)

使用str.strip刪除開頭和結尾的空格(如果有)。

然后使用str.split將分隔符以','作為分隔符,以返回字符串列表。

將列表中的每個元素轉換為int

string = "3, 4, 5, 99"

strings = string.strip().split(",")

a_list = [int(i) for i in strings]

for i in range (0, len(a_list)):
    if int(a_list[i]) == 99:
        print "yes 99 is in here"

為什么不呢?

if string == "99" or\
   string.startswith("99,") or\
   string.endswith(", 99") or\
   ", 99," in string: print "Hooray!"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM