我有一个坐标数组const bool DEBUG = false
,我想将其转换为字符串格式
test
预期输出是
print(test)
[[[-122.45939656328747, 37.796690447896445], [-122.45859061899071, 37.785810199890264], [-122.44198816647757, 37.786535549757346], [-122.43578239539256, 37.789920515803715], [-122.42828711343275, 37.77444638530603]]]
以下代码仅删除了外部括号,如何使用python删除内部括号并在坐标对之间放置一个管道(“ |”)?
"-122.45939656328747, 37.796690447896445 | 122.45859061899071, 37.785810199890264 | -122.44198816647757, 37.786535549757346 | -122.43578239539256, 37.789920515803715 |
-122.42828711343275, 37.77444638530603"
答案 0 :(得分:2)
由于在您的问题中外括号似乎并不重要,所以我用test[0]
将其删除了,以下代码应提供您想要的内容。
result = [str(coor).strip('[]') for coor in test[0]]
result = " | ".join(result)
答案 1 :(得分:0)
好吧,看来您有一个包含一个项目的列表,而该项目是一个列表列表。有点奇怪,但还可以。第一步将是提取列表列表,这很容易,只需将索引设为零即可。然后,我要做的是使每个内部列表都成为一个字符串,(而不是像上面那样将整个对象都转换为字符串),并在大列表上使用join,如下所示:
Vue.component('tabs', {
props: ['tabs'],
template: `
<section class="tabs">
<nav class="tabs-nav">
<ul class="tabs-list">
<li v-for="item in tabs" :key="item" class="tabs-listitem">
<a class="tabs-trigger">{{item.title}}</a>
</li>
</ul>
</nav>
<div class="tabs-body">
<article v-for="item in tabs" v-html="item.content" :key="item"></article>
</div>
</section>`
})
var app = new Vue({
el: '#app',
data () {
return {
tabs: [
{
title: 'Tab 1',
content: '<h1>Tab 1 Content</h1>'
},
{
title: 'Tab 2',
content: '<h1>Tab 2 Content</h1>'
},
{
title: 'Tab 3',
content: '<h1>Tab 3 Content</h1>'
}
]
}
}
})
编辑:意识到上面的答案将导致每对在其周围都有括号,我想您不希望这样做。只需删除第一个和最后一个字符即可轻松解决:
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
<div id="app">
<tabs :tabs="tabs"></tabs>
</div>