Вот простое решение:
>>> x
array([' HHHHHHH HHHHHHHHHHH HHHHHHHHHHHHHHHHHHH ',
' E E EEE ',
' TT ',
' CC CCCC'],
dtype='<U51')
>>> x.view('u4').reshape(len(x), -1).max(0).view(x.dtype).item(0).strip()
'EHHHHHHHEHHHHHHHHHHHTTCCEEEHHHHHHHHHHHHHHHHHHHCCCC'
Время:
f_pp 5.941 us
f_tb 27.473 us
f_ji 21.265 us
Код для получения времени:
import numpy as np
from timeit import timeit
x = np.array([' HHHHHHH HHHHHHHHHHH HHHHHHHHHHHHHHHHHHH ',
' E E EEE ',
' TT ',
' CC CCCC'])
def f_pp():
return x.view('u4').reshape(len(x), -1).max(0).view(x.dtype).item(0).strip()
def f_tb():
result = []
for pos in zip(*x): # create tuples of chars from the same index in all string
char = ''.join(pos).replace(' ', '') # remove all space chars
if char: # if there's anything left (ie. skip the char at index 0)
result.append(char[-1]) # then append the char from the array closest to the bottom
return ''.join(result) # convert back to string
def f_ji():
return ''.join(max(y) for y in zip(*x)).strip()
for f in (f_pp, f_tb, f_ji):
print(f.__name__, f'{timeit(f, number=1000) * 1000:>6.3f} us')
Each client needs to sign up for the developer program.
If you don't have many clients, it's easiest to do Ad-Hoc builds from your own account and only do the final App Store build from theirs. Or, if they have technical people they can handle the ad-hoc builds themselves and not consume your precious device count on the developer portal.
You can be made a "admin" on a client portal, but the problem with using that is that only the person who created the company account can create and use Ad-Hoc certificates.
Вы бы один раз зарегистрировались. Каждый из ваших клиентов определенно захочет зарегистрировать свой аккаунт по самой важной причине. Вот где устанавливается банковская информация, указывающая, куда уходят деньги. :). И контракты, данные о продажах и т. Д. Предполагая, что их 99 долларов будут потеряны в шуме по сравнению с вашими гонорарами. :).
Лучший способ заставить его работать - это разработка под ключом Wildcarded для разработчиков и ключами для подписи кода (ad hoc) (ваша учетная запись). Вы можете подписать несколько клиентов с одинаковыми ключами, настроенными таким образом. Затем в конце вы подписываете и публикуете с определенным ключом AppStore (учетная запись каждого клиента).
Это позволит вам контролировать разработку, тестировать и даже запускать бета-версию дистрибутива по клиентам. Когда разработка закончена, и вы остановились на мастер-билде, Вы передаете Zip версии релиза, подписанную их ключом, и они загружают его через iTunes Connect под своей учетной записью.
Бонусный раздел: Эта конфигурация легко реализуется в XCode (как только вы получаете более 24 часов душит себя) работа с xcode и сертификаты распространения работают, вероятно, это наиболее хорошо задокументированная проблема разработки iphone. спросите настоящего человека, который делал это раньше, чтобы настроить вас в первый раз. с тех пор это станет очевидным.)
Перейдите в Проект-> Изменить настройки проекта-> Конфигурации. Дублируйте две новые конфигурации из конфигурации «Release». Назовите один «Ad Hoc», другой «AppStore». Установите сертификаты подписи следующим образом: ваш iPhone Developer для отладки / выпуска, либо iPhone Distribution для Ad Hoc, и их iPhone Distribution (AppStore) для "AppStore". Забудьте, что у вас даже есть клиент до конца, затем переключитесь на распространение AppStore, сборку, почтовый индекс, электронную почту и готово.
На практике это сложнее, чем то, что вам нужно будет также настроить несколько сертификатов / профилей / ключей на вашем компьютере, но как только вы закончите, это в основном будет работать следующим образом.
Не тот ответ, который вам нужен, но я думаю, что да, вам нужно будет зарегистрироваться в Программе разработчика один раз для каждого клиента.