Tôi có chức năng chính này:
def main[]:
subprocess.call["cls", shell=True]
ipList,hostList,manfList,masterList,temp = [],[],[],[],[]
ipList,hostList,manfList, = getIPs[],getHosts[],getManfs[]
entries = len[hostList]
i = 0
for i in xrange[i, entries]:
temp = [[hostList[i]],[manfList[i]],[ipList[i]]]
masterList.append[temp]
with open["output.csv", "wb"] as f:
writer = csv.writer[f, delimiter=',']
writer.writerows[masterList]
Đầu ra hiện tại của tôi là nó viết thành công vào CSV nhưng mục tiêu của tôi là loại bỏ các dấu ngoặc vuông.
Tôi đã thử sử dụng phương thức .join[]
tuy nhiên tôi hiểu rằng nó chỉ mất danh sách đơn và không được lồng vào danh sách.
Làm thế nào tôi có thể đạt được điều này cho rằng tôi đang sử dụng danh sách 3 chiều? Lưu ý, tôi dự định thêm nhiều cột dữ liệu trong tương lai.
Edit:
Đầu ra hiện tại của tôi cho 1 hàng tương tự như:
['Name1,'] ['Brand,'] ['1.1.1.1,']
Tôi muốn nó là:
Name1, thương hiệu, 1.1.1.1,
Tôi đang viết một danh sách cho CSV và cũng viết một tiêu đề. Nhưng danh sách luôn xuất ra với dấu ngoặc mở và đóng và trích dẫn: ví dụ: "[123, không chấp thuận, không]", trong khi tiêu đề thì không. Nếu tôi sử dụng thay thế để loại bỏ các dấu ngoặc, tôi sẽ có dấu ngoặc kép. Nếu tôi thay thế các trích dẫn, thì các trích dẫn vẫn còn. Bất kỳ trợ giúp sẽ được đánh giá cao. #
SkuId,status,avail
for item in bird:
outgroup.write[item]
0for item in bird:
outgroup.write[item]
1# Hoặc danh sách đầu ra như thế này nếu tôi sử dụng chức năng thay thế
SkuId,status,avail
for item in bird:
outgroup.write[item]
3for item in bird:
outgroup.write[item]
4
13 năm trước
Tôi có mã này thao tác nhiều danh sách [là sự kết hợp của các số và từ] và tôi cần nó để in vào một tệp văn bản theo hàng mà không có dấu ngoặc. Đây là mã:
ingroup = open ["c: \ python25 \ drew \ subgroup.txt", 'r'] outgroup = file ["đã làm.txt", 'w'] . CT+= 1
outgroup = file ["dID.txt", 'w']
ct = 1
rcw = ingroup.readlines[]
cID=0
ID=[] #list
dID={} #dictionary
for record in rcw:
bird = str.split[record] # bird is a list now with
dID[bird[3]]=0
for eachid in
dID:
dID[eachid]=ct
ct+=1
Để ghi trong RCW: Bird = Str.Split [Record] Bird.insert [0, Did [Bird [3]]] In
bird = str.split[record]
bird.insert[0,dID[bird[3]]]
print >> outgroup, bird
Đầu ra trông như thế này, nhưng tôi cần nó mà không có dấu ngoặc:
. 'Lba8puye', '32', '10y', 's0111p', '2'] [39, 'cl', '006', '2004', 'a8lgpuye', '10', 'ty', 's0111p' , '2']
[53, 'CL', '006', '2004', 'LBA8PUYE', '32', '10Y', 'S0111P', '2']
[39, 'CL', '006', '2004', 'A8LGPUYE', '10', 'TY', 'S0111P', '2']
Cảm ơn
Câu trả lời được đề xuất
Mỗi dòng tệp của bạn được đọc trong danh sách, vì vậy bạn cần lặp qua danh sách và in từng mục.
for item in bird: outgroup.write[item]
Này, cảm ơn rất nhiều vì đã xem xét điều này. Tôi đã thử nó và tôi đã nhận được dấu vết sau: Traceback [cuộc gọi gần đây nhất]: Tệp "C: \ python25 \ drew \ gert hoặc bộ đệm nhân vật chỉ đọc, không phải int
Bạn có thể chuyển đổi danh sách thành một chuỗi và sử dụng Slice ...
q = [23, 'CL', '006', '2004', 'DBA8ORPU', '41', '8Y', 'S0111P', '2'] # slice off first and last character str_q = str[q][1 : -1] print[str_q] """ my result --> 23, 'CL', '006', '2004', 'DBA8ORPU', '41', '8Y', …
Này, cảm ơn rất nhiều vì đã xem xét điều này. Tôi đã thử nó và tôi đã nhận được dấu vết sau: Traceback [cuộc gọi gần đây nhất]: Tệp "C: \ python25 \ drew \ gert hoặc bộ đệm nhân vật chỉ đọc, không phải int
Đảm bảo trong tương lai - bạn sử dụng khối "mã" khi đăng mã, nó giúp đọc dễ dàng hơn nhiều ...
13 năm trước
Mỗi dòng tệp của bạn được đọc trong danh sách, vì vậy bạn cần lặp qua danh sách và in từng mục.for item in bird:
outgroup.write[item]
13 năm trước
Mỗi dòng tệp của bạn được đọc trong danh sách, vì vậy bạn cần lặp qua danh sách và in từng mục.
for item in bird: outgroup.write[item]
Này, cảm ơn rất nhiều vì đã xem xét điều này. Tôi đã thử nó và tôi đã nhận được dấu vết sau: Traceback [cuộc gọi gần đây nhất]: Tệp "C: \ python25 \ drew \ gert hoặc bộ đệm nhân vật chỉ đọc, không phải int
I tried it and I got the following trace back:
Traceback [most recent call last]:
File "C:\Python25\Drew\assignID.py", line 19, in
outgroup.write[item]
TypeError: argument 1 must be string or read-only character buffer, not int
13 năm trước
Này, cảm ơn rất nhiều vì đã xem xét điều này. Tôi đã thử nó và tôi đã nhận được dấu vết sau: Traceback [cuộc gọi gần đây nhất]: Tệp "C: \ python25 \ drew \ gert hoặc bộ đệm nhân vật chỉ đọc, không phải int
I tried it and I got the following trace back:
Traceback [most recent call last]:
File "C:\Python25\Drew\assignID.py", line 19, in
outgroup.write[item]
TypeError: argument 1 must be string or read-only character buffer, not int
Đảm bảo trong tương lai - bạn sử dụng khối "mã" khi đăng mã, nó giúp đọc dễ dàng hơn nhiều ...
Bất cứ khi nào bạn viết nội dung vào tệp - nó cần phải ở định dạng chuỗi. Vì vậy, khi bạn vượt qua một số nguyên để viết, Python đã lỗi. Những gì bạn muốn là một cái gì đó như thế này:
for item in bird:
outgroup.write[str[item]]
Vegaseat1.735 đồng nghiệp của Đội đạo đức giả của Daniweb 1,735 DaniWeb's Hypocrite Team Colleague
13 năm trướcBạn có thể chuyển đổi danh sách thành một chuỗi và sử dụng Slice ...
q = [23, 'CL', '006', '2004', 'DBA8ORPU', '41', '8Y', 'S0111P', '2']
# slice off first and last character
str_q = str[q][1 : -1]
print[str_q]
"""
my result -->
23, 'CL', '006', '2004', 'DBA8ORPU', '41', '8Y', 'S0111P', '2'
"""
woooee814 gần một maven đăng 814 Nearly a Posting Maven
13 năm trướcBạn có thể chuyển đổi danh sách thành một chuỗi và sử dụng Slice ...
for record in rcw:
bird = record.strip[].split[]
## add this to each record
outgroup.write["%s" % [dID[bird[3]]] ## assuming this is a string
## bird is a list
for field in bird:
outgroup.write[", %s" % [field]] ## you may not want the
comma
outgroup.write["\n"]
##
## or more simply
for record in rcw:
bird = record.strip[].split[]
## prepend this to each record
outgroup.write["%s " % [dID[bird[3]]]]
## and the record
outgroup.write["%s" % [record]] ## assumes record already has a "\n"
13 năm trước
Bạn có thể chuyển đổi danh sách thành một chuỗi và sử dụng Slice ...
really good advice from all you guys
woooee814 gần một maven đăng
RCW là một danh sách các danh sách. Bạn muốn viết chuỗi vào một tệp để bạn phải thêm một cấp độ nữa.
Cảm ơn tất cả mọi người lời khuyên thực sự tốt từ tất cả các bạn