Bunun gibi daha fazla komut görüyorum:
$ pip install "splinter[django]"
Bu köşeli parantezler ne işe yarar?
Bunun gibi daha fazla komut görüyorum:
$ pip install "splinter[django]"
Bu köşeli parantezler ne işe yarar?
pip install "splinter[django]", desen yanlışlıkla kabuk genişlemesini önlemek için.
Yanıtlar:
Kullandığınız sözdizimi şudur:
pip install "project[extra]"
Sizin durumunuzda, sen eklendi desteği vardır paket . Köşeli parantezler ( ) belirli bir sözdizimi değildir, sadece kuraldır. Gerçekten, adlandırılmış paketi yüklüyorsanız: .installingsplinterdjango[]"splinter[django]"
Şuradan bir açıklama @chetner:
Komut
pip install splinter django,splinterve adında iki paket kuracaktırdjango.splinter[django], Öte yandan, için desteğinisplinteriçeren paketin bir varyantını yükler . Paketin kendisiyle hiçbir ilgisi olmadığını , yalnızca etkinleştirilen belirli bir özellik kümesi için paket tarafından tanımlanan bir dize olduğunu unutmayın.djangodjangosplinter
extrageliyor?
splinterve adlı iki paket kuracaktır django. splinter[django], Öte yandan, splinteriçin desteğini içeren paketin bir varyantını yükler django. djangoPaketin kendisiyle hiçbir ilgisi olmadığını , yalnızca splinteretkinleştirilen belirli bir özellik kümesi için paket tarafından tanımlanan bir dize olduğunu unutmayın.
splinterhala paket adıdır; pipkendisi ayrıştırır splinter[django]ve doğru dosyaları kurmasına yardımcı olmak için fazladan bir "argüman" ile bir paket adı olarak tanır. Argümanın nasıl djangoyorumlanacağı tamamen setup.pypaketi tanımlamak için kullanılan dosyaya (veya başka bir yapılandırma dosyasına? Aslında ayrıntıları bilmiyorum) bağlıdır splinter.
pip install splinterdaha az gereksinim yükleyecektir pip install splinter[django]. Yüklenen ek paketler gerçekten de kıymığın ek özelliklerinin çalışmasını sağlayabilir (ve muhtemelen yapar), ancak kıymık paketinin kendisi hakkında hiçbir şeyi değiştirmez. Sadece pip'e ek bağımlılıklar hakkında bilgi verir.
[optional]köşeli parantezler isteğe bağlı bağımlılıkları belirtirBaşka bir geliştiricinin bu kalıbı kendi Python paketi dağıtımında uygulamak istemesi durumunda, burada brackets []in pip ile ilgili daha fazla açıklama var .
Yüklemek için airflowgelen pip bu komutu kullanın:
pip install 'apache-airflow'
Aşağıdakilerle isteğe bağlı hava akışı bileşenlerini kurabilirsiniz :
pip install 'apache-airflow[aws]'
# [optional] -----------^
Biz ne zaman arama pypi için apache-airflownot opsiyonel paketler kadar görünmemesi:
pip search 'apache-airflow'
apache-airflow (1.10.9) - Programmatically author, schedule and monitor data pipelines
pylint-airflow (0.1.0a1) - A Pylint plugin to lint Apache Airflow code.
swe-airflow-tools (0.0.3) - Tools for Apache Airflow Application
airflow (0.6) - Placeholder for the old Airflow package
...
setup.pyBunun nasıl başarıldığını setup.py komut dosyasında görebilirsiniz
Solda setup.py- extras_requireiçinde tanımlanmıştır.
Sağda, bu isteğe bağlı alt paketler için ilişkili yükleme komutları vardır.
Bunların kurulum araçları ekstraları olduğundan oldukça eminim:
Bazen bir projenin, projenin tüm kullanımları için gerekli olmayan "önerilen" bağımlılıkları vardır. Örneğin, bir proje ReportLab kuruluysa isteğe bağlı PDF çıktısı ve docutils kuruluysa reStructuredText desteği sunabilir. Bu isteğe bağlı özelliklere "ekstralar" denir ...