В конструкции C условное определение #ifdef проверяет, существует ли только «SOMETHING», где ваше выражение на python проверяет, является ли значение выражения истинным или ложным, на мой взгляд два очень разных Кроме того, конструкция C вычисляется во время компиляции.
«что-то», основанное на вашем исходном вопросе, должно быть переменной или выражением, которое (существует и) оценивается как истинное или ложное, как уже отмечали другие люди, проблема может быть в том, что эта переменная «что-то» не определена. поэтому «ближайший эквивалент» в python будет выглядеть примерно так:
if 'something' in locals(): # or you can use globals(), depends on your context
import module
или (хаки):
try:
something
import module
except NameError, ImportError:
pass # or add code to handle the exception
НТН