Подход SVG явно хорош! Но я попытался сделать это с помощью CSS! Каким-то образом мне удалось получить его до здесь ...
* {
box-sizing: border-box;
margin: 0;
padding: 0
}
.relative {
position: relative;
}
.absolute {
position: absolute;
}
body {
background: url('http://lorempicsum.com/up/627/300/4') no-repeat top left;
background-size: cover;
padding-top: 10%;
}
.parent {
margin: 0 auto;
display: table;
width: 400px;
height: 230px;
text-align: center;
table-layout: fixed;
}
.orange {
display: table-cell;
vertical-align: middle;
background: transparent;
width: 100%;
height: 230px;
margin: 0 auto;
overflow: hidden;
position: relative;
border-left: 137px solid orange;
border-right: 137px solid orange;
}
.one,
.two {
position: relative;
width: 126px;
height: auto;
display: block;
border-left: 28px solid orange;
border-right: 28px solid orange;
margin: 0 auto;
}
.one {
border-top: 60px solid transparent;
border-bottom: 60px solid orange;
}
.two {
border-top: 60px solid orange;
border-bottom: 60px solid transparent;
}
<div class="parent">
<div class="orange">
<div class="two"></div>
<div class="one"></div>
</div>
</div>
Вы можете сократить одну строчку :)
startupinfo = None
if os.name == 'nt':
startupinfo = subprocess.STARTUPINFO()
startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
proc = subprocess.Popen(command, startupinfo=startupinfo)
Я не уверен, что вы можете сделать что-то проще, чем то, что вы сделали. Вы говорите об оптимизации, может быть, 5 строк кода. За деньги я бы просто продолжил свой проект и принял это как результат кроссплатформенной разработки. Если вы делаете это часто, создайте специализированный класс или функцию для инкапсуляции логики и импортируйте ее.
Вы можете превратить свой код в:
params = dict()
if os.name == 'nt':
startupinfo = subprocess.STARTUPINFO()
startupinfo.dwFlags |= subprocess.STARTF_USESHOWWINDOW
params['startupinfo'] = startupinfo
proc = subprocess.Popen(command, **params)
, но это ненамного лучше.
Небольшое замечание: для Python 2.7 я должен использовать subprocess._subprocess.STARTF_USESHOWWINDOW
вместо subprocess.STARTF_USESHOWWINDOW
.