Maison  >  Article  >  développement back-end  >  que signifie la plage en python

que signifie la plage en python

藏色散人
藏色散人original
2019-06-29 11:15:0732090parcourir

que signifie la plage en python

La fonction python range() crée une liste d'entiers et est généralement utilisée dans les boucles for.

Syntaxe de la fonction

range(start, stop[, step])

Description du paramètre :

start : Le comptage commence à partir du début. La valeur par défaut est de commencer à 0. Par exemple, range(5) est équivalent à range(0, 5);

stop : compte jusqu'à la fin de l'arrêt, mais n'inclut pas l'arrêt. Par exemple : la plage (0, 5) est [0, 1, 2, 3, 4] sans 5

pas : taille du pas, la valeur par défaut est 1. Par exemple : range(0, 5) est équivalent à range(0, 5, 1)

Instance

>>>range(10)        # 从 0 开始到 10
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> range(1, 11)     # 从 1 开始到 11
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>> range(0, 30, 5)  # 步长为 5
[0, 5, 10, 15, 20, 25]
>>> range(0, 10, 3)  # 步长为 3
[0, 3, 6, 9]
>>> range(0, -10, -1) # 负数
[0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
>>> range(0)
[]
>>> range(1, 0)
[]
以下是 range 在 for 中的使用,循环出runoob 的每个字母:
 
>>>x = 'runoob'
>>> for i in range(len(x)) :
...     print(x[i])
... 
r
u
n
o
o
b
>>>
 
在tensorflow python 3.6的环境下,range函数中实参必须为int型,否则报错
 
def load_dataset(data_dir, img_size):
"""img_files = os.listdir(data_dir)
test_size = int(len(img_files)*0.2)
test_indices = random.sample(range(len(img_files)),test_size)
for i in range(len(img_files)):
#img = scipy.misc.imread(data_dir+img_files[i])
if i in test_indices:
test_set.append(data_dir+"/"+img_files[i])
else:
train_set.append(data_dir+"/"+img_files[i])
return"""
global train_set
global test_set
imgs = [] 
img_files = os.listdir(data_dir)
for img in img_files:
try:
tmp= scipy.misc.imread(data_dir+"/"+img)
x,y,z = tmp.shape
coords_x = x // img_size
coords_y = y // img_size
           
#coords_y = y / img_size
#                       coords_x = x / img_size
            
            #print (coords_x)
coords = [ (q,r) for q in range(coords_x) for r in range(coords_y) ]
for coord in coords:
imgs.append((data_dir+"/"+img,coord))
except:
print ("oops")
test_size = min(10,int( len(imgs)*0.2))
random.shuffle(imgs)
test_set = imgs[:test_size]
train_set = imgs[test_size:][:200]
return
def get_batch(batch_size,original_size,shrunk_size):
global batch_index
"""img_indices = random.sample(range(len(train_set)),batch_size)
for i in range(len(img_indices)):
index = img_indices[i]
img = scipy.misc.imread(train_set[index])
if img.shape:
img = crop_center(img,original_size,original_size)
x_img = scipy.misc.imresize(img,(shrunk_size,shrunk_size))
x.append(x_img)
y.append(img)"""
max_counter = len(train_set)/batch_size   
counter = batch_index % max_counter
#counter = tf.to_int32(batch_index % max_counter)    
window = [x for x in range(int(counter*batch_size),int((counter+1)*batch_size))]
 
#window = [x for x in range(tf.to_int32(counter*batch_size),tf.to_int32((counter+1)*batch_size))]
#window = [x for x in np.arange((counter*batch_size),((counter+1)*batch_size))]
#a1=tf.cast(counter*batch_size,tf.int32)
#a2=tf.cast((counter+1)*batch_size,tf.int32)
#window = [x for x in range(a1,a2)]
#window = [x for x in np.arange(a1,a2)]
#win2 = tf.cast(window,tf.int32)
#win2 = tf.to_int32(window)
#win2 = tf.to_int64(window)
 
imgs = [train_set[q] for q in window]
x = [scipy.misc.imresize(get_image(q,original_size),(shrunk_size,shrunk_size)) for q in imgs]#scipy.misc.imread(q[0])[q[1][0]*original_size:(q[1][0]+1)*original_size,q[1][1]*original_size:(q[1][1]+1)*original_size].resize(shrunk_size,shrunk_size) for q in imgs]
y = [get_image(q,original_size) for q in imgs]#scipy.misc.imread(q[0])[q[1][0]*original_size:(q[1][0]+1)*original_size,q[1][1]*original_size:(q[1][1]+1)*original_size] for q in imgs]
batch_index = (batch_index+1)%max_counter

Recommandations associées : "Tutoriel Python

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn