簡體   English   中英

檢查字符串是否以“|”結尾使用 python

[英]Check the string is ending with "|" using python

我需要檢查字符串是否以|結尾或不。

Student,"Details"
Joe|"December 2017|maths"
Bob|"April 2018|History|Biology|Physics|"
sam|"December 2018|physics"

我已嘗試使用以下代碼,但它沒有按預期工作。

def Pipe_in_variant(path):
    df = pd.read_csv(path, sep='|')
    mask = (df['Details'])
    result = mask.endswith(""|"")
    print("...................")
    print(result)

您的示例輸入不清楚,但是假設您要檢查列中的項目是否以某些內容結尾,請使用str.endswith

例子:

df = pd.DataFrame({'Details': ['ab|c', 'acb|']})

df['Details'].str.endswith('|')

output:

0    False
1     True
Name: Details, dtype: bool

注意 - 我認為輸入的第一行應該是Student|"Details"而不是Student,"Details"

這是你可以做的

import pandas as pd
dframe = pd.read_csv('input.txt', sep='|')
dframe['ends_with_vbar'] = dframe['Details'].str.endswith('|')
dframe

Output:

  Student                              Details  ends_with_vbar
0     Joe                  December 2017|maths           False
1     Bob  April 2018|History|Biology|Physics|            True
2     sam                December 2018|physics           False

然后您可以按如下方式打印標記的行

for _, row in dframe[dframe['ends_with_vbar']].iterrows():
    print(f'{row["Student"]} - {row["Details"]}')

Output:

Bob - April 2018|History|Biology|Physics|

暫無
暫無

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

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