Вы можете использовать этот скрипт .
*! > input[type=text] { background: #000; }
Это позволит выбрать любого родителя текстового ввода. Но подождите, еще многое. Если вы хотите, вы можете выбрать указанного родителя:
.input-wrap! > input[type=text] { background: #000; }
или выбрать его, когда он активен:
.input-wrap! > input[type=text]:focus { background: #000; }
Посмотрите этот HTML:
вы можете выбрать span.help
, когда активен input
и показать его:
.input-wrap! .help > input[type=text]:focus { display: block; }
Есть еще много возможностей; просто проверьте документацию плагина.
BTW, он работает в IE.
Выбранная конфигурация образца действительно действительна YAML . Фактически, YAML отвечает всем вашим требованиям, реализуется на большом количестве языков и очень дружелюбен для людей. Я настоятельно рекомендую вам использовать его. Проект PyYAML обеспечивает хороший модуль python, который реализует YAML.
Использование модуля yaml чрезвычайно просто:
import yaml
config = yaml.safe_load(open("path/to/config.yml"))
Yaml и Json являются простейшими и наиболее часто используемыми форматами файлов для сохранения настроек / конфигурации. PyYaml можно использовать для анализа yaml. Json уже является частью python от версии 2.5. Ямль - это надмножество Джсона. Json решит большинство случаев использования, за исключением многострочных строк, в которых требуется экранирование. Ямль также заботится об этих случаях.
>>> import json
>>> config = {'handler' : 'adminhandler.py', 'timeoutsec' : 5 }
>>> json.dump(config, open('/tmp/config.json', 'w'))
>>> json.load(open('/tmp/config.json'))
{u'handler': u'adminhandler.py', u'timeoutsec': 5}
У вас может быть обычный Python-модуль, например config.py, например:
truck = dict(
color = 'blue',
brand = 'ford',
)
city = 'new york'
cabriolet = dict(
color = 'black',
engine = dict(
cylinders = 8,
placement = 'mid',
),
doors = 2,
)
и использовать его так:
import config
print config.truck['color']
.py
являются исполняемыми, поэтому любой код может быть запущен при попытке загрузить конфигурацию через import
. Это неприемлемо с точки зрения безопасности.
– Apalala
10 February 2016 в 00:18
ast.literal_eval
? docs.python.org/3/library/ast.html#ast.literal_eval
– André Christoffer Andersen
2 September 2016 в 21:49
Я нашел это наиболее полезным и простым в использовании https://wiki.python.org/moin/ConfigParserExamples
Вы просто создаете «myfile.ini», как :
[SectionOne]
Status: Single
Name: Derek
Value: Yes
Age: 30
Single: True
[SectionTwo]
FavoriteColor=Green
[SectionThree]
FamilyName: Johnson
[Others]
Route: 66
И получить данные типа:
>>> import ConfigParser
>>> Config = ConfigParser.ConfigParser()
>>> Config
<ConfigParser.ConfigParser instance at 0x00BA9B20>
>>> Config.read("myfile.ini")
['c:\\tomorrow.ini']
>>> Config.sections()
['Others', 'SectionThree', 'SectionOne', 'SectionTwo']
>>> Config.options('SectionOne')
['Status', 'Name', 'Value', 'Age', 'Single']
>>> Config.get('SectionOne', 'Status')
'Single'