1. 程式人生 > >用PYTHON進行字串提取的兩種方法

用PYTHON進行字串提取的兩種方法

有文字內容如下:

12345678fdsjhgjhgfdshkjhkStartGood MorningHello WorldEnddashjkhjkdsfjkhk

我需要用Python實現——獲取”Start”和”End”之間的內容並寫入結果檔案。

解決方法1:

with open('/path/to/input') as infile, open('/path/to/output', 'w') as outfile:

    copy = False
    for line in infile:
        if line.strip() == "Start":
            copy = True
        elif line.strip() == "End":
            copy = False
        elif copy:
            outfile.write(line)
123456789withopen('/path/to/input')asinfile,open('/path/to/output','w')asoutfile:copy=Falseforlineininfile:ifline.strip()=="Start":copy=Trueelifline.strip()=="End":copy=Falseelifcopy:outfile.write(line)
解決方法2:
1 2 3 4 5 6 7 with open('input.txt')asmyfile: content=myfile
.read() text=re.search(r'Start\n.*?End',content,re.DOTALL).group() with open("output.txt","w")asmyfile2: myfile2.write(text)
解決方法3:

相關推薦

PYTHON進行字串提取方法

有文字內容如下: 12345678fdsjhgjhgfdshkjhkStartGood MorningHello WorldEnddashjkhjkdsfjkhk我需要用Python實現——獲取”Start”和”End”之間的內容並寫入結果檔案。解決方法1:with open('/path/to

Python實現獎金計算方法的比較

position class pla nbsp font fault and dem 100萬 應發獎金計算 簡述:企業發放的獎金根據利潤提成。利潤(profit)低於或等於10萬元時,獎金可提10%; 利潤高於10萬元,低於20萬元時,低於10萬元的部分按1

python 生成隨機數的方法

1. 使用 random 包生成隨機數 可以生成 均勻分佈, 高斯分佈,(包括正態分佈) 指數分佈,(與泊松分佈有區別:泊松分佈表示一段時間發生多少次,而指數分佈表示兩次發生的時間間隔) 貝塔分佈, 韋布爾分佈的隨機數 由此可見,random 包支援的隨機分佈比較有限,功能較少.

Python操作Hive的方法總結

方法一:使用PyHive庫 安裝依賴包:其中sasl安裝可能會報錯,可以去https://www.lfd.uci.edu/~gohlke/pythonlibs/#sasl下載對應版本安裝。 pip install sasl pip install thrift pip install thr

方法實現Python二分查詢演算法 方法實現Python二分查詢演算法

兩種方法實現Python二分查詢演算法   一. ? 1 2

Python檔案操作的方法 快速入門

python內建函式 1.試著向檔案中寫一句話 路徑:“C:/Users/thinkpad/Desktop/demo.txt” 開啟方式:寫(‘w’) # -*- encoding: UTF-8 -*- fp = open("C:/Users/thinkpad/

python 新增字串的七方法

#使用{}的方法 s1 = 'Hello {}! My name is {}.'.format('World', 'Python貓') print(s1) s2 = 'Hello {0} My name is {1}.'.format('world','Python 貓') print(s2) s3

本人原創!解決安卓ListView複問題最簡單的方法

        ListView在安卓很多地方需要用得到,其實listview是基於MVC架構設計的,即資料model,檢視view和控制器controller。安卓已幫我們寫好該框架,我們只需往裡

1.如何避免野指標2.獲取字串方法。以及malloc,calloc,ralloc的使用注意點3.二維三維陣列4.陣列和函式的區別

一:野指標: char *ptr; 定一個指標,沒有賦值,用NULL。 char *ptr = NULL 即表示指向空,不能再做賦值,不能對0地址操作訪問。 //#define NULL (void *)o 如果出現段錯誤,看看對NULL有沒有賦值。 如何避免野指標而不

python生成隨機數的幾方法

  今天學習了用python生成模擬資料的一些基本方法和技巧,寫成部落格和大家分享一下。      本篇部落格主要講解如何從給定引數的的正態分佈/均勻分佈中生成隨機數以及如何以給定概率從數字列表抽取某數

python 開啟程序的方法、以及查詢子程序與父程序

方法1 先輸出主程序,再輸出子程序是因為 p.start() 只是給系統傳送就緒訊號有延時,所以主程序都執行完了,可能子程序才到他開始執行 from multiprocessing import Process # 建立程序的模組 def

C++ 拼接字串方法

#include <iostream> #include <iomanip> #include <cstdio> #include <cstring> #include <sstream> usin

利用Python進行圖片發送與接收的方法---包含客戶端和服務器端代碼

list() tmp span 客戶端 time() failed pri ucc out 第一種方法 opencv、requests、flask 此方法比較耗費時間 600毫秒左右 客戶端代碼 #coding:utf-8 import cv2 import json i

Java——方法實現字串逆序

package com.zth; public class Test{ public static String fun1(String str){ //方法一 將字串轉換為字元陣列 char[] arr = str.toCharA

python學習——採用“+”和“join”方法合併字串

將一些小的字串合併成一個大的字串,有兩總方法: 1、“+” 很簡單的方法,例如: l = ['a', 'b', 'c', 'd', 'e'] s = '' for x in l: s += x print(s) 得到結果: 'abcde

對陣列 [3, 1, 2, 4, 2, 4, 5, 3, 7] 進行去重, 寫出至少方法 (請寫出一段Python程式碼實現刪除一個list裡面的重複元素)

1. 對陣列 [3, 1, 2, 4, 2, 4, 5, 3, 7] 進行去重, 寫出至少兩種方法 (請寫出一段Python程式碼實現刪除一個list裡面的重複元素)In [1]:def unique1

線程的啟動的方法,Runnable接口,run()的調

ride 之前 線程終止 源碼解析 star 有意 tro thread類 override 實現並啟動線程有兩種方法1、寫一個類繼承自Thread類,重寫run方法。用start方法啟動線程2、寫一個類實現Runnable接口,實現run方法。用new Thread(Ru

使用Python生成源文件的方法

mob zhang mod pri tid 串接 數字 能夠 package 利用Python的字符串處理模塊,開發者能夠編寫腳本用來生成那些格式同樣的C、C++、JAVA源程序、頭文件和測試文件,從而避免大量的反復工作。本文概述兩種利用Python string類生成

VBA調DOS程序方法

cnblogs fstream scrip 窗體 pre obj 程序 .exe style Set wsh = VBA.CreateObject("WScript.Shell") ‘wsh.Run strExePath & " g", vbHid

C#調非托管C++DLL的方法

sso tro medium direction ive 之間 測試工程 win bug C#編寫的代碼屬於跨平臺的托管代碼,C++語言可以編寫托管(managed)和非托管(native)代碼。在C#與C++的混合編程中,經常會使用C#來調用native C++的DL