我有一位同事声称这git pull
是有害的,并且每当有人使用它时都会感到不安.
该git pull
命令似乎是更新本地存储库的规范方法.使用git pull
创建问题?它创造了什么问题?有更好的方法来更新git存储库吗?
我是python的初学者.我无法理解继承和__init__()
.
class Num:
def __init__(self,num):
self.n1 = num
class Num2(Num):
def show(self):
print self.n1
mynumber = Num2(8)
mynumber.show()
Run Code Online (Sandbox Code Playgroud)
结果: 8
还行吧.但我换成Num2
了
class Num2(Num):
def __init__(self,num):
self.n2 = num*2
def show(self):
print self.n1,self.n2
Run Code Online (Sandbox Code Playgroud)
结果: Error. Num2 has no attribute "n1".
在这种情况下,如何Num2
访问n1
?
我希望用C/C++做到这一点.
我遇到了可变长度参数,但这表明使用libffi的 Python和C解决方案.
现在,如果我想用printf
函数包装myprintf
我的工作如下:
void myprintf(char* fmt, ...)
{
va_list args;
va_start(args,fmt);
printf(fmt,args);
va_end(args);
}
int _tmain(int argc, _TCHAR* argv[])
{
int a = 9;
int b = 10;
char v = 'C';
myprintf("This is a number: %d and \nthis is a character: %c and \n another number: %d\n",a, v, b);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
但结果不如预期!
This is a number: 1244780 and
this is a character: h and
another number: 29953463
Run Code Online (Sandbox Code Playgroud)
我错过的任何一点?
如何使用类型提示来注释返回一个Iterable
总是产生两个值的函数:a bool
和a str
?提示Tuple[bool, str]
很接近,除了它将返回值类型限制为元组,而不是生成器或其他类型的可迭代.
我很好奇,因为我想注释一个foo()
用于返回多个值的函数,如下所示:
always_a_bool, always_a_str = foo()
Run Code Online (Sandbox Code Playgroud)
通常函数喜欢foo()
做这样的事情return a, b
(它返回一个元组),但我喜欢的类型暗示有足够的灵活性,以取代发电机或列表或别的东西返回的元组.
或至少它的一部分,这是有道理的.
更具体地说,我有一些环境变量,它们是通过运行脚本导出的,为手头的任务创建了一个适当的环境.当我运行tmux时,这些变量在全局或会话环境中都无处可见.当然我可以再次运行这个脚本但是......
如果我可以在我的.tmux.conf
文件中指定特定的变量,我会感到满意:
set-environment VAR $VAR
Run Code Online (Sandbox Code Playgroud)
不做我期望的事.
提前致谢 :)
啊,我想我知道为什么.
当启动第二个tmux会话时,比如说在另一个终端中,它会从第一个终端复制环境.第一个几乎采用了调用shell的当前环境并为它添加了一些tmuxiness.
我目前的解决方法是在需要更改环境时停止并启动我的tmux会话.
我读过有关抽象基类的python文档:
从这里:
abc.abstractmethod(function)
指示抽象方法的装饰员.使用这个装饰器需要该类的元类是
ABCMeta
从它派生的.ABCMeta
除非所有抽象方法和属性都被覆盖,否则无法实例化具有派生自元类的类.
而在这里
您可以将
@abstractmethod
装饰器应用于必须实现的draw()等方法; 然后,Python将为未定义该方法的类引发异常.请注意,只有在您实际尝试创建缺少该方法的子类的实例时才会引发该异常.
我已经用这段代码测试了一下:
import abc
class AbstractClass(object):
__metaclass__ = abc.ABCMeta
@abc.abstractmethod
def abstractMethod(self):
return
class ConcreteClass(AbstractClass):
def __init__(self):
self.me = "me"
c = ConcreteClass()
c.abstractMethod()
Run Code Online (Sandbox Code Playgroud)
代码很好,所以我不明白.如果我输入c.abstractMethod
我得到:
<bound method ConcreteClass.abstractMethod of <__main__.ConcreteClass object at 0x7f694da1c3d0>>
Run Code Online (Sandbox Code Playgroud)
我在这里缺少什么?ConcreteClass
必须实现抽象方法,但我也不例外.
当我在搜索,例如,man ls
而在tmux
会议上,搜索字符串不高亮显示-页面跳转下来,让搜索字符串是在缓冲区的顶部线条,符合市场预期,但它并不突出.
在不在tmux
会话中的同一个shell中执行相同的操作会导致突出显示的搜索字符串.
我不知道从哪里开始寻求解决这个问题.任何提示都表示赞赏.
是否可以使用__init__.pyx
(编译__init__.so
)创建Python 2.7包?如果是这样的话?我没有运气好运.
这是我尝试过的:
setup.py
:
#!/usr/bin/env python
from distutils.core import setup
from distutils.extension import Extension
from Cython.Distutils import build_ext
foo = Extension(name='foo.__init__', sources=['foo/__init__.pyx'])
bar = Extension(name='foo.bar', sources=['foo/bar.pyx'])
setup(name='foo',
packages = ['foo'],
cmdclass={'build_ext':build_ext},
ext_modules = [foo, bar])
Run Code Online (Sandbox Code Playgroud)foo/__init__.pyx
:
import foo.bar
cpdef hello_world():
print "hello world"
foo.bar.blah()
Run Code Online (Sandbox Code Playgroud)foo/bar.pyx
:
cpdef blah():
print "blah"
Run Code Online (Sandbox Code Playgroud)以上具有以下行为:
$ python -c 'import foo; foo.hello_world()'
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named foo
Run Code Online (Sandbox Code Playgroud)
我看到 …
在最新的版本emacs
(从24.3.50
快照)没有在启动时警告.emacs.d
恰好是在负载路径.
Warning (initialization): Your `load-path' seems to contain
your `.emacs.d' directory: ~/.emacs.d/
This is likely to cause problems...
Consider using a subdirectory instead, e.g.: /home/adriean/.emacs.d/lisp
Run Code Online (Sandbox Code Playgroud)
有没有办法禁用这个警告?
(因为我想把我的emacs.d放在加载路径中,现在作为一个快速的暴力黑客我去了(setq warning-minimum-level :error)
,但我宁愿尽快摆脱这个)
我相对来说是git的新手,我正面临着这个问题.git push命令显示以下错误.我将从一开始就向你解释我一直想做的事情.我创建了一个子模块,提交并推送它.推送抛出下面的错误.
Salman@PC_HOME ~/git/breakit-web-app (master)
$ git push origin master
error: refs/heads/master does not point to a valid object!
Counting objects: 4, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 421 bytes, done.
Total 3 (delta 1), reused 0 (delta 0)
remote: bb/acl: salmanmanekia is allowed. accepted payload.
error: Ref refs/heads/master is at 6a47a0fd398610a75bdab8976f842dc0efd89f86 but expected 00000000000000000000000000000000000000000
remote: error: failed to lock refs/heads/master
To ssh://git@bitbucket.org/majuri/breakit-web-app.git
! [remote rejected] master -> master …
Run Code Online (Sandbox Code Playgroud) python ×4
git ×2
tmux ×2
abc ×1
ansi-escape ×1
c ×1
c++ ×1
cython ×1
emacs ×1
emacs24 ×1
git-pull ×1
gnu-screen ×1
inheritance ×1
init ×1
python-2.7 ×1
python-3.5 ×1
python-3.x ×1
terminfo ×1
type-hinting ×1