2009-02-26 22 views
0

Çok basit bir çarpışma algılama programında bir fonksiyonun parçası olarak birkaç basit değişken bildirmeye çalışıyorum. Bazı nedenlerden dolayı değişkenlerimi reddediyor (her ne kadar bunlardan sadece bazıları aynı olsalar da). İşte işlevin kodu; o backgroundr kabul ama backgroundg değil nedense python değişkenleri ad kabul etmiyor

def TimeCheck(): 
    timechecknumber = int(time.time()) 
    timecheckdiv = backcolourcheck % 5 
    if timecheckdiv < 1: 
     timecheck = true 
    else: 
     timecheck = false 
    if timecheck == true: 
     backgroundr = (int(random.random()*255)+1 
     backgroundg = (int(random.random()*255)+1 
     backgroundb = (int(random.random()*255)+1 

, herkes neden herhangi bir fikir var mı? teşekkürler

+1

"Kabul" ne anlama geliyor? Belirli bir hata mesajınız veya başka bir sorununuz mu var? Yoksa() 'lerinizi dengelemekte güçlük çekiyor musunuz? –

+0

Ben sadece backgroundg kırmızı ve sözdizimi hatası söyleyerek vurgulamak istedim. Bu sadece bir parantez sorunu oldu :) – user33061

cevap

8

backgroundr ile başlayan satırda eşleşmeyen parantezleriniz var. Sen de o düzeltmek gerekecek yüzden önümüzdeki iki hattın her biri aynı zamanda, uyumsuz parantez olduğunu

backgroundr = int(random.random() * 255) + 1 

Not: Bunu istiyorum belki düşünüyorum.

+0

aha, parantez sorunu, teşekkürler: D – user33061

+0

Int için döküm önce 255 ile çarpmanız gerekir. – recursive

+0

Aşağıda belirtildiği gibi, kodun yararlı bir şey yapmasını istiyorsanız (muhtemelen bunu yapıyorsanız), büyük olasılıkla parantezin aşağıdaki sırayla olmasını istiyorsunuz (yanıtı bunu yansıtacak şekilde düzenledim). – mipadi

2

mipadi'nin cevabı her zaman bir 1 verim sağlayacaktır. Int için önce 255 ile çarpmanız gerekir. Bunu dene.

backgroundr = int(random.random() * 255) + 1 
+0

Varsayalım - tabi ki - istedikleri bu.() 'S yanlış olduğundan, belki de her seferinde 1 cevap istemişlerdir ;-) –

İlgili konular