我一直在读一本教科书,我遇到了一个有趣的问题,要我用print 语句打印一个这样的地址:
John Doe
123 Main Street
AnyCity, AS 09876
Run Code Online (Sandbox Code Playgroud)
我试图弄清楚是否可以使用一个 print语句来实现它,但我无法弄清楚如何使用Python 3中的.format()方法添加换行符.这是我尝试过的:
>>> first = 'John'
>>> last = 'Doe'
>>> street = 'Main Street'
>>> number = 123
>>> city = 'AnyCity'
>>> state = 'AS'
>>> zipcode = '09876'
>>>
>>> ("{0} {1}\n{2} {3}\n{4}, {5} {6}").format(first, last, number, street, city, state, zipcode)
'John Doe\n123 Main Street\nAnyCity, AS 09876'
>>>
>>> ("{0} {1}'\n'{2} {3}'\n'{4}, {5} {6}").format(first, last, number, street, city, state, zipcode)
"John Doe'\n'123 Main Street'\n'AnyCity, …Run Code Online (Sandbox Code Playgroud) 我正在用C++实现一个通用堆栈(带有一个数组),并且对于在这种情况下返回什么感到困惑:
template <class T>
T Stack<T>::pop(void) {
if (size != 0) {
return items[size - 1];
size--;
} else {
cerr << "Cannot pop from empty stack." << endl;
return ???;
}
}
template <class T>
T Stack<T>::peek(void) {
if (size != 0)
return items[size - 1];
else {
cerr << "Cannot peek from empty stack." << endl;
return ???;
}
}
Run Code Online (Sandbox Code Playgroud)
我有什么选择?我认为做一些像声明一个新的T变量并返回它会很麻烦.我画了一个空白.
如果一个求值为true,Python中有没有办法继续检查if else语句的条件?这是我的代码:
status = True
if pass_len(S) == False:
print ('Password must be at least 6 characters long')
status = False
elif pass_upper(S) == False:
print('Password must include upper case letters')
status = False
elif pass_lower(S) == False:
print('Password must include lower case letters')
status = False
elif pass_nums(S) == False:
print('Password must include digits.')
status = False
else:
status = True
return status
Run Code Online (Sandbox Code Playgroud)
例如,如果密码没有大写字符或数字,我想打印这两个消息,而不仅仅是"密码必须包含大写字母",它就在那里结束.我尝试通过退回每个声明来解决这个问题,但它没有奏效.任何帮助表示赞赏,谢谢.
在Python中有没有办法迭代每个整数,直到发生某些事情?现在我倾向于做以下之一:
for i in range(999999999):
...
if something:
break
Run Code Online (Sandbox Code Playgroud)
要么
i = 0
status = True
while status:
...
if something:
status = False
i += 1
Run Code Online (Sandbox Code Playgroud)
这两种方法都适用于我正在做的事情,但我确信有更好的方法.请指出我正确的方向.