我正在学习ABAP。以前我用的是python。
Python: ', '.join(['one', 'two', 'three'])
Result: 'one, two, three'
Run Code Online (Sandbox Code Playgroud)
如何连接字符串列表并,
创建包含 的字符串one, two, three
?
系统版本为740。
我用option运行pytest -q
。
不幸的是,这会打印出很多点。例:
...................................................................................s...............s...................................ssssss..................................................................................................................................s..............s.........................s..............................................................................................................F....s.s............s.....................s...........................................................................................................................
=================================== FAILURES ===================================
_____________________ TestFoo.test_bar _____________________
Traceback (most recent call last):
(cut)
Run Code Online (Sandbox Code Playgroud)
有没有办法避免这么长的点和“ s”字符列表?
更新资料
有一个有效的答案。但是不知何故对我来说太长了。我现在使用以下解决方法:我将其添加到调用pytest的脚本中:pytest -q | perl -pe 's/^[.sxFE]{20,}$//g'
我尝试使用SAP 文档中的SELECT FROM @itab
解释here。
我从未使用过此功能,但认为这很棒。您可以查询仅存在于解释器 RAM 中的内部数据结构,就像它是数据库中的真实表一样。我很佩服。
这是ABAP代码:
data: lt_get_auth_values TYPE STANDARD TABLE OF US335.
CALL FUNCTION 'GET_AUTH_VALUES'
EXPORTING
OBJECT1 = 'Z:FOO'
USER = sy-uname
TABLES
VALUES = lt_get_auth_values.
SELECT highval from @lt_get_auth_values as mytab WHERE field = 'WERKS'
INTO TABLE @DATA(static_perm_filter_fields).
Run Code Online (Sandbox Code Playgroud)
我无法激活该功能,因为根据我的系统,“来自@lt_get_auth_values”是语法错误。
这条线有什么问题?
SAP 版本:740(抱歉,我一开始以为是 752)
我有这个代码,它适用于很多报告:
if IV_SELECTION_SET_VARIANT is INITIAL.
SUBMIT (IV_REPORT_NAME)
WITH SELECTION-TABLE selection_table
AND RETURN.
ELSE.
SUBMIT (IV_REPORT_NAME)
WITH SELECTION-TABLE selection_table
USING SELECTION-SET IV_SELECTION_SET_VARIANT
AND RETURN.
endif.
FIELD-SYMBOLS <lt_data> TYPE ANY TABLE.
FIELD-SYMBOLS <lt_data_line> TYPE ANY TABLE.
DATA lr_data TYPE REF TO data.
DATA lr_data_line TYPE REF TO data.
DATA lr_data_descr TYPE REF TO cl_abap_datadescr.
DATA lr_data_line_descr TYPE REF TO cl_abap_datadescr.
cl_salv_bs_runtime_info=>get_data_ref(
IMPORTING r_data_descr = lr_data_descr
r_data_line_descr = lr_data_line_descr ).
IF lr_data_descr IS NOT BOUND.
ev_result_json = '[]'.
EXIT.
ENDIF.
Run Code Online (Sandbox Code Playgroud)
但对于 AdHoc 查询,该行为 …
我尝试按照ReportPortal 的 kubernetes install README进行操作
guettli@yoga15:~/projects/reportportal-kubernetes/reportportal$ mv v5 reportportal
guettli@yoga15:~/projects/reportportal-kubernetes/reportportal$ helm install ./reportportal
Error: must either provide a name or specify --generate-name
guettli@yoga15:~/projects/reportportal-kubernetes/reportportal$ helm install ./reportportal --generate-name
Error: found in Chart.yaml, but missing in charts/ directory: postgresql, rabbitmq-ha, elasticsearch, minio
Run Code Online (Sandbox Code Playgroud)
这是v5目录。
现在需要做什么?
我使用Bootstrap 5开发响应式应用程序:
有6个断点
xs
sm
md
lg
xl
xxl
如果 chrome 开发工具可以显示当前宽度的缩写,那就非常方便了。
例如这里。参见“XX”
我知道我可以修改 HTML 来获得结果,但不更改我正在处理的 HTML 的解决方案会非常酷。
在上面的示例中,宽度474
小于576px
,这意味着断点的名称将为xs
。
此代码由black创建:
def test_schema_org_script_from_list():
assert (
schema_org_script_from_list([1, 2])
== '<script type="application/ld+json">1</script>\n<script type="application/ld+json">2</script>'
)
Run Code Online (Sandbox Code Playgroud)
但现在 flake8 抱怨:
tests/test_utils.py:59:9: 二元运算符前的 W503 换行符
测试/test_utils.py:59:101: E501 行太长(105 > 100 个字符)
如何格式化上面的行并使 flake8 快乐?
我用这个 .pre-commit-config.yaml
# See https://pre-commit.com for more information
# See https://pre-commit.com/hooks.html for more hooks
repos:
- repo: 'https://github.com/pre-commit/pre-commit-hooks'
rev: v3.2.0
hooks:
- id: trailing-whitespace
- id: end-of-file-fixer
- id: check-yaml
- id: check-added-large-files
- repo: 'https://gitlab.com/pycqa/flake8'
rev: 3.8.4
hooks:
- id: flake8
- repo: 'https://github.com/pre-commit/mirrors-isort'
rev: v5.7.0
hooks:
- id: …
Run Code Online (Sandbox Code Playgroud) 我希望命令行工具在打开特定文件进行写入时失败。
有没有办法可以修改命令行工具的环境(可能通过 cgroups),以便命令/进程(例如)“权限被拒绝”?
chmod a-w file
不起作用。该过程似乎unlink()
然后重新创建该文件。
我知道我可以使用 来观看进程的系统调用strace
。但是有没有办法改变一些调用,以便该过程得到不同的结果?
想象一下我想使用strconv.Atoi
,但我很懒,想自动导入它。
package main
import (
"fmt"
)
func main() {
i, _ := Atoi|("123")
fmt.Println(i)
}
Run Code Online (Sandbox Code Playgroud)
管道符号 (|) 显示我的光标所在位置
在 PyCharm 中,我能够通过 alt+ENTER 自动导入匹配函数。
有没有一种方法可以将 vscode 将上面的代码更改为以下代码:
package main
import (
"fmt"
"strconv"
)
func main() {
i, _ := strconv.Atoi("123")
fmt.Println(i)
}
Run Code Online (Sandbox Code Playgroud) 输入文件如下所示:
A 3.00 B 4.00 C 5.00 D 6.00
E 3.20 F 6.00 G 8.22
H 9.00
I 9.23 J 89.2
K 32.344
Run Code Online (Sandbox Code Playgroud)
我希望字符成为字典中的键,而浮点数是值.
这是我到目前为止的非工作失败.
def main():
#Input File
reader = open('candidate.txt', 'r'
my_dictionary = {}
i=0
for line in reader.readlines():
variable = line.split(' ')[i]
value = line.split(' ')[i+1]
my_dictionary[variable]= value
i+=2
print my_dictionary
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud) abap ×3
python ×2
alv ×1
auto-import ×1
cgroups ×1
dictionary ×1
file ×1
flake8 ×1
go ×1
kubernetes ×1
linux ×1
opensql ×1
pytest ×1
python-black ×1
readline ×1
reportportal ×1
sap-query ×1
system-calls ×1