Tôi có chuỗi trong biểu mẫu
[3339:1.6101369,1062:1.5,5751:1.5,6376:1.5, ... ]
Tôi muốn lặp lại thông qua các cặp giá trị khóa phân tách dấu phẩy. Cách tốt nhất hoặc ngắn nhất để làm điều này là gì?
hỏi ngày 14 tháng 2 năm 2011 lúc 22:19Feb 14, 2011 at 22:19
s = "[3339:1.6101369,1062:1.5,5751:1.5,6376:1.5]"
s = s.strip["[]"] # Drop the brackets
for kv in s.split[","]:
key, value = kv.split[":"]
print key, value
Ngoài ra, bạn có thể chuyển đổi nó thành một từ điển [sau khi tước giá đỡ]:
d = dict[kv.split[":"] for kv in s.split[","]]
Và sau đó lặp lại từ điển:
for key in d:
print key, d[key]
Đã trả lời ngày 14 tháng 2 năm 2011 lúc 22:22Feb 14, 2011 at 22:22
Sven Marnachsven MarnachSven Marnach
547K114 Huy hiệu vàng918 Huy hiệu bạc819 Huy hiệu đồng114 gold badges918 silver badges819 bronze badges
1
d = ast.literal_eval['{' + s[1:-1] + '}']
Đã trả lời ngày 14 tháng 2 năm 2011 lúc 22:23Feb 14, 2011 at 22:23
Mark Byersmark ByersMark Byers
785K188 Huy hiệu vàng1552 Huy hiệu bạc1440 Huy hiệu đồng188 gold badges1552 silver badges1440 bronze badges
4
Chức năng tham gia [] chấp nhận hai tham số, lát chuỗi và dấu phân cách và trả về một chuỗi kết hợp được nối bởi một dấu phân cách. Mã ví dụ dưới đây kết hợp hai chuỗi được phân tách bằng dấu phân cách dấu phẩy. Gói nhập chính ["fmt" "chuỗi"] func main [] {result: = chuỗi. Tham gia [[] chuỗi {"xin chào", "thế giới!"}, ","] Fmt.
Làm thế nào để bạn in dấu phẩy các giá trị tách biệt trong Python?
PRINT [] Các chuỗi được phân tách bằng dấu phẩy in [] cung cấp sử dụng dấu phẩy để kết hợp các chuỗi cho đầu ra. Bằng các chuỗi phân tách dấu phẩy, print [] sẽ xuất ra từng chuỗi được phân tách theo một không gian theo mặc định.
if__name__=='__main__':__name__=='__main__': chars=['A','B','C','D','E']chars =['A','B','C', 'D','E'] delim=','delim=',' s=delim.join[chars]s=delim.join[chars] & nbsp; & nbsp; & nbsp; & nbsp;print[s] # A,B,C,D,E |
Tải xuống & nbsp; & nbsp; mã
3. Sử dụng vòng lặp
If you have a list of integers, you should convert each element to a string first. This can be efficiently done using the map[]
function.
if__name__=='__main__':__name__=='__main__': nums=[1,2,3,4,5]nums =[1,2,3, 4,5] delim=','delim=',' s=delim.join[map[str,nums]]s=delim.join[map[str, nums]] Cuối cùng, bạn có thể lặp lại trong danh sách bằng cách sử dụng vòng lặp và kết hợp từng thành viên trong danh sách thành một chuỗi mới được phân tách bởi một dấu phân cách.print[s] # 1,2,3,4,5 |
Tải xuống & nbsp; & nbsp; mã
3. Sử dụng vòng lặp
Cuối cùng, bạn có thể lặp lại trong danh sách bằng cách sử dụng vòng lặp và kết hợp từng thành viên trong danh sách thành một chuỗi mới được phân tách bởi một dấu phân cách.
FromfunSpoolsimportTreducefunctoolsimportreduce if__name__=='__main__':__name__=='__main__': chars=['A','B','C','D','E']chars=['A', 'B','C','D','E'] delim=','delim=',' add=lambdax,y:x+delim+yadd=lambda x,y:x+delim +y s=reduce[add,chars]s= reduce[add,chars] & nbsp; & nbsp; & nbsp; & nbsp;print[s] # A,B,C,D,E |
Tải xuống & nbsp; & nbsp; mã
3. Sử dụng vòng lặp
Cuối cùng, bạn có thể lặp lại trong danh sách bằng cách sử dụng vòng lặp và kết hợp từng thành viên trong danh sách thành một chuỗi mới được phân tách bởi một dấu phân cách.
FromfunSpoolsimportTreducefunctoolsimportreduce if__name__=='__main__':__name__=='__main__': chars=['A','B','C','D','E']chars=['A', 'B','C','D','E'] delim=','delim=',' s=''s='' forstrinchars:forstrinchars: s+=[str+delim]s +=[str+delim] & nbsp; & nbsp; & nbsp; & nbsp; in [s [:-1]]print[s[:-1]] # A,B,C,D,E |
Tải xuống & nbsp; & nbsp; mã
Đó là tất cả về việc tạo ra một chuỗi được phân tách bằng dấu phẩy từ một danh sách các chuỗi trong Python.
Cảm ơn vì đã đọc.
Vui lòng sử dụng trình biên dịch trực tuyến của chúng tôi để đăng mã trong các nhận xét bằng C, C ++, Java, Python, JavaScript, C#, PHP và nhiều ngôn ngữ lập trình phổ biến hơn.
Như chúng tôi? Giới thiệu chúng tôi với bạn bè của bạn và giúp chúng tôi phát triển. Mã hóa hạnh phúc :] :]