eval
и exec
являются правильным решением, и их можно использовать в режиме более безопасный .
Как обсуждалось в Справочное руководство Python и четко объяснил в этот учебник, функции eval
и exec
принимают два дополнительных параметра, которые позволяют пользователю указать, какие глобальные и локальные функции и переменные доступны.
Например:
public_variable = 10
private_variable = 2
def public_function():
return "public information"
def private_function():
return "super sensitive information"
# make a list of safe functions
safe_list = ['public_variable', 'public_function']
safe_dict = dict([ (k, locals().get(k, None)) for k in safe_list ])
# add any needed builtins back in
safe_dict['len'] = len
>>> eval("public_variable+2", {"__builtins__" : None }, safe_dict)
12
>>> eval("private_variable+2", {"__builtins__" : None }, safe_dict)
Traceback (most recent call last):
File "", line 1, in
File "", line 1, in
NameError: name 'private_variable' is not defined
>>> exec("print \"'%s' has %i characters\" % (public_function(), len(public_function()))", {"__builtins__" : None}, safe_dict)
'public information' has 18 characters
>>> exec("print \"'%s' has %i characters\" % (private_function(), len(private_function()))", {"__builtins__" : None}, safe_dict)
Traceback (most recent call last):
File "", line 1, in
File "", line 1, in
NameError: name 'private_function' is not defined
По сути вы определяете пространство имен, в котором будет выполняться код.
Вы можете использовать следующие методы, чтобы получить системный шрифт полужирный или курсив:
UIFont* boldFont = [UIFont boldSystemFontOfSize:[UIFont systemFontSize]];
UIFont* italicFont = [UIFont italicSystemFontOfSize:[UIFont systemFontSize]];
Затем просто установите шрифт, который используется в текстовом поле;
[textField_TOP_01 setFont:boldFont];
Если вы хотите чтобы узнать больше о шрифтах с iPhone, вы можете увидеть хороший скриншот всех доступных шрифтов здесь: https://www.cocoanetics.com/2010/02/understanding-uifont/ или вы можете прочитать о классе, который показывает вам, как вы также можете извлечь «buttonFontSize» и «labelFontSize» и т. д .; https://developer.apple.com/documentation/uikit/uifont
В swift 3.0 Предположим, что ваше имя переменной UITextField - textField.
textField.font = UIFont(name: "HelveticaNeue-Medium", size: 17)// for medium
name: "HelveticaNeue-Bold" // for bold
Если нормальный шрифт похож,
[UIFont fontWithName:@"Gill Sans" size:16]]
Я могу выделить его жирным шрифтом, изменив строку как,
[UIFont fontWithName:@"GillSans-Bold" size:16]]