擅长:python、mysql、java
<p>我认为这是可行的:</p>
<pre class="lang-py prettyprint-override"><code>import csv, collections
with open('test.txt', 'r') as record_fields, open('log.csv', 'w') as out_file:
records, fieldnames, record = [], collections.OrderedDict(), {}
for field in record_fields:
name, _, value = field.strip().partition(": ")
if name == "Employee Name" and record:
records.append(record)
record = {}
if name not in record: record[name] = value
fieldnames[name] = None
records.append(record)
writer = csv.DictWriter(out_file, fieldnames=fieldnames.keys())
writer.writeheader()
writer.writerows(records)
</code></pre>
<p>它给了我:</p>
<pre><code>Employee Name,Designation,Email,ContactNo,Qualification,Area of Interest / Specialisation
Dr.john doe,Professor,johndoe@google.com,"1234567, 9999999","M.Tech., Ph.D.",network security
Dr. john doe2,Professor2,johndoe2@google.com,222222222,"B.Tech., Ph.D.",network security2
Dr. john doe3,Associate Professor3,johndoe3@google.com,"333333,4444444",Ph.D.,network security3
</code></pre>