我对golang的理解,链接和连接第三方库的系统有些难以理解。由于某种原因只能连接github,或者我没搞清楚。仍然到处都有一些关于包和模块的被破坏的术语。请解释什么是什么以及为什么需要它、链接的区别以及是否可以连接不是来自 github 的东西?请附上您的俄语来源。英语文学相当多,但一切似乎都与俄语翻译有些混乱。
Ivan43
Asked:
2023-06-22 12:28:14 +0000 UTC
C++ 有一堆自己的强制转换(static_cast、dynamic_cast、 ...)。在某些情况下您应该使用 C 风格的强制转换(type)obj吗?
Aleksandr Bogatyrev
Asked:
2023-06-22 07:44:03 +0000 UTC
您能否告诉我是否有选项可以获取嵌套深度未知的元素的索引,或者是否有一个变量可以指向此类元素的路径?
我正在解决一个非常需要“当场”进行更改的问题,尽管没有人禁止用更改后的结果替换原始源。
假设我们有一个列表:
lst = [
'el1',
['el2', 15, 'text'],
['el3', '2.6', ['el4', ['el5']]],
'el6'
]
从这个列表中,我们想要获取元素的路径'el5'以将其转换为例如元组。
我对 python 的基本了解表明,我们可以创建一个临时变量,并通过搜索底层列表,创建指向感兴趣元素的链接。
我可能是错的,但在这种情况下,我们将获得包含所需元素的本地片段的链接。但对于操作,我们需要使用索引的完整路径来引用源。否则,原始源中的转换将不会发生。
例如,当您沿着源移动时,您可以以索引列表的形式获取路径:
def find_elem(lst: list, elem: any) -> list[int] | None:
'''получаем путь до искомого элемента в виде списка индексов'''
for i, el in enumerate(lst):
if isinstance(el, (list, tuple)):
returned = find_elem(el, elem)
if returned != None: # проверяем был ли во вложенном списке искомый элемент
return [i, ] + returned
elif el == elem:
return [i, ]
return None # элемент в переданной коллекции не нашелся
print(find_elem(lst, 'el5')) # вернет путь виде списка [2, 2, 1, 0]
问题是如何将这个列表转换为
needed_elem = lst[2][2][1][0]
PS 我把这个函数写在膝盖上只是为了展示问题的本质。
UPD。我附上了应用算法的结果以及所需元素的源和本地化之旅。结果,原始来源仍保持其原始形式......
needed_elem = find_elem(lst, 'text') № [1, 2]
needed_addr = lst[1][2]
needed_addr = ['text', 'new text']
print(lst) # ['el1', ['el2', 15, 'text'], ['el3', '2.6', ['el4', ['el5']]], 'el6']
lst[1][2] = ['text', 'new text']
print(lst) # ['el1', ['el2', 15, ['text', 'new text']], ['el3', '2.6', ['el4', ['el5']]], 'el6']
从上面的例子可以看出,只有第二版的申诉才导致了变化。
Илья
Asked:
2023-06-11 20:08:40 +0000 UTC
class A {
A(const A&) = delete;
};
#include <type_traits>
static_assert(std::is_trivially_copyable_v<A>);
为什么没有出现编译错误,因为复制构造函数已从类中移除?
Александр
Asked:
2023-06-11 13:18:08 +0000 UTC
有这段代码:
const emo = ['⭐', '⭐️'];
console.log(emo[0] === emo[1]) // false
console.log(emo[0].length) // 1
console.log(emo[1].length) // 2
谁在表情符号字符上摸索了很多,请解释它是如何工作的。为什么两个“相同”的表情符号彼此不相等,为什么它们的长度不同?