from typing import Any, Optional
class A:
def __init__(self, option: str):
self._option = option
def option(self) -> str:
return self._option
class B:
def __init__(self, option: int):
self._option = option
def option(self) -> int:
return self._option
def func(x: Any, *, a: Optional[A] = None, b: Optional[B] = None) -> None:
if a is not None:
print(a.option())
if b is not None:
print(b.option())
if __name__ == '__main__':
func(None, a=A('aaa'))
func(None, b=B(666))
func(None, a=A('AAA'), b=B(666))
D:\Temp>py
Python 3.8.2 (tags/v3.8.2:7b3ab59, Feb 25 2020, 23:03:10) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> quit()
D:\Temp>py -2
Python 2.7.15 (v2.7.15:ca079a3ea3, Apr 30 2018, 16:30:26) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> quit()
D:\Temp>
self.ui.status.setText("Вход в учётную запись")
self.ui.setText("Вход в учётную запись")
OSVERSIONINFOEX osvi = {};
то все работает...Хоть debug, хоть release, хоть x86, хоть amd65. См. кусок с исправлениями (если объединить все в один файл). #include <stdio.h>
#include <stdbool.h>
#include <stdint.h>
#include <windows.h>
bool getWindowsVersion(char* version);
int main(int argc, char* argv[])
{
// куча всяких printf();
#ifdef _WIN32
char version[2500];
if (getWindowsVersion(version))
printf("Operating System: %s\n", version);
#endif
#if defined(__USE_LARGEFILE) && defined(__USE_LARGEFILE64)
printf("\nLarge file available: %d offset\n", __USE_FILE_OFFSET64);
#endif
}
bool getWindowsVersion(char* version)
{
int index = 0;
OSVERSIONINFOEX osvi;
The ball can only be seen if the height of the rebounding ball is strictly greater than the window parameter.Именно тут ваша программа и врет. Когда мячик подлетает точно на уровень окна. У вас результат приведения к int - единица, но это не должно считаться за отсчет. Оно, конечно, авторы задачи не правы, посколько все операции с плавающей точкой по определению не точны...