所以我知道有些语言有预期的约定.
PHP - underscore_case() [大多数情况下,lolo]
Java - camelCase()
C# - PascalCase()
等等
什么是"Pythonic"命名约定?我知道最终并不重要,只是想知道是否有大多数模块完成的"最佳实践"方式.
我看到了这个:
using (StreamWriter sw = new StreamWriter("file.txt"))
{
// d0 w0rk s0n
}
Run Code Online (Sandbox Code Playgroud)
我尝试查找信息的所有内容都没有解释这是做什么的,而是给了我关于命名空间的东西.
我不确定要作为默认值返回什么?
myDrugs是一个私人vector<Drug*>容器
Drug* DrugDealer::getFirstDrugInSack(DrugType drugtobuy)
{
for (int i = 0; i < myDrugs.size(); i++)
{
if (myDrugs[i]->getType() == drugtobuy)
return myDrugs[i];
}
return 0; // is this right?
}
Run Code Online (Sandbox Code Playgroud)
所以我会称之为:
Drug *d = DrugDealer->getFirstDrugInSack(DrugType::Weed);
if (d != 0)
// do something
else
// onose?
Run Code Online (Sandbox Code Playgroud)
或者有更好的方法吗?
让我们说我有以下几点:
{{Hello | Hi | Hey} {world | earth} | {再见|告别} {noobs | n3wbz | n00blets}}
我希望它变成以下任何一种:
Hello world
Goodbye noobs
Hi earth
farewell n3wbz
// etc.
Run Code Online (Sandbox Code Playgroud)
注意嵌套"旋转"语法的方式.对于我们所知道的,它可以嵌套十亿层深.
我可以很容易地做到这一点,除非他们像上面的例子一样嵌套我的正则表达式混乱并且结果不正确.
有人可以用.NET语言或Python显示一个例子吗?
我讨厌CURL它太笨重,有太多依赖,当我需要做的就是快速打开一个URL.我甚至不需要检索网页的内容,我只需要向服务器发出GET HTTP请求.
我能做到这一点的最小方法是什么,不要说CURL!@#$
我正在制作一个二十一点的卡片,我想要在卡片中处理它如何在赌场,
即所有玩家获得一张牌,经销商一张面朝下,玩家获得另一张牌,经销商一张面朝上
但是我看起来是暴力干的:(如何重做?
void BlackJack::newHand()
{
resetHands();
for (unsigned int i = 0; i < players.size(); i++)
players[i]->addCard(deck->nextCard());
Card* c = deck->nextCard();
c->setVisible(false); // dealer gets a face down card
dealer->addCard(c);
for (unsigned int i = 0; i < players.size(); i++)
players[i]->addCard(deck->nextCard());
dealer->addCard(deck->nextCard());
}
Run Code Online (Sandbox Code Playgroud) 转换为python:
#include <iostream>
using namespace std;
int main(int argc, char** argv)
{
for (int i = 0, j = i + 3; i < 100; ++i, j= i+3)
cout << i << " j: " << j << endl;
getchar();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
我尝试:
for i in range(99):
j = i + 3
print i, " j: ", j
Run Code Online (Sandbox Code Playgroud)
如何使它成为循环?
所以我在Zend框架中启动并希望实现一个站点范围的"用户"会话....我可以从应用程序中的所有模块/控制器轻松访问.
我想,我应该在库中创建一个新的命名空间并扩展控制器,如:
class MYCUSTOMLIB_Controller_Action extends Zend_Controller_Action
{
protected $_userSession;
function preDispatch(Zend_Controller_Request_Abstract $req)
{
$this->_userSession = new Zend_Session_Namespace('user');
}
}
Run Code Online (Sandbox Code Playgroud)
然后我的所有控制器/模块/等都延伸到那个?
或者我应该创建一个插件或什么?您将如何使此插件将用户会话传递给控制器?
或者我是否在引导程序中执行此操作?再次如何传递给控制器?
我也应该使用Zend_Session_Namespace或Zend_Http_Cookie,以及如何加密和xss清理cookie或自动完成?
假设我有一个https页面,我可以对非SSL进行ajax调用,而不会在浏览器中收到警告吗?
我想对非敏感数据这样做,所以它更快
我尝试了以下正则表达式来删除括号之间的{anything}(希望括号本身)!
mystr.remove(QRegExp("\\{(.*?)\\}"));
mystr.remove(QRegExp("\{(.*?)\}"));
Run Code Online (Sandbox Code Playgroud)
什么都没有删除