ორი სიის შეერთება


#1

გამარჯობა
ახალი დაწყებული მაქ პროგრამირების მეცადინეობა და რაღაცას ვერ ვაკეთებ…
მაქ დავუშვათ 2 სია ერთში სახელებია და მეორეში ნომრები…როგორ შეილება რომ შევაერთო ისე რომ სიის იტემები ერთმანეთს დაემთხვას???
მაგალითად სია არის სახელების:

$names = array(“გიორგი”, “ქეთი”, “ზია”)
$nomrebi = array(“23”, “12”, “10”)

მინდა რომ დამილაგოს ესეთნაირად
გიორგი-23
ქეთი-12
ზია-10
ეს პჰპშია მარა ნებისმიერი სხვა ენას ტუ დაწერთ ძალიან მომეხმარება


#2

Python-ს აქვს მარტივად

dict(zip(names, nomrebi))


#3

ზუსტათ როგორ იქნება ეეგ? არვიცი პითონი…
დიდი მადლობა


#4

რავი, მეტი ზუსტად როგორ გითხრა
ეგ ფუნქცია დაგიბრუნებს ზუსტად იმას რაც შენ გჭირდება

names = [“გიორგი”, “ქეთი”, “ზია”]
nomrebi = [23, 12, 10]

x = dict(zip(names, nomrebi))

x-ს ექნება ასეთი ფორმა :

{“გიორგი”: 23, “ქეთი”: 12, “ზია”: 10}


#5

მადლობა დიდი! პითონი საიდან შეილება რო გადმოვწერო?


#6

#7

javascript-ში

var სახელები = ["გიორგი", "ქეთი", "ზია"];
var ნომრები = [23, 12, 10];
var შედეგი = შეარწყე(სახელები, ნომრები);


function შეარწყე (ცხრ1, ცხრ2) {
	var შედეგი = [];
	ცხრ1.forEach(function (ოდენობა, ინდექსი) {
		შედეგი.push([ოდენობა, ცხრ2[ინდექსი] || ""].join("-"));
	});
	return შედეგი;
}

ფუნქცია ასეც შეიძლება დაწერო, მაგრამ პირველი უფრო მეელეგანტურება

function შეარწყე (ცხრ1, ცხრ2) {
	var შედეგი = [];
	for (var ინდექსი = 0; ინდექსი < ცხრ1.length; ინდექსი++) {
		შედეგი.push([ცხრ1[ინდექსი], ცხრ2[ინდექსი]].join("-"));
		
	}
	return შედეგი;
}


#8

მადლობა ! კიდე 1 შეკიტხვა და აღარ შეგაწუხებთ…

დავუშვათ სიები არაა ტოლი და ერთში თუ 10 სახელია მეორეში 9… მანდ როგორ შიეძლება გაკეთება რო რომელ სახელსაც ნომერი არ აქვს ის ცარიელი დარჩეს?


#9

python, map()

names = ["გიორგი", "ქეთი", "ზია", "ბიძინა"]
nomrebi = [23, 12, 10]
for names, nomrebi in map(None, names, nomrebi):
    print names, nomrebi
```

შედეგი:
```
გიორგი 23
ქეთი 12
ზია 10
ბიძინა None
```

#10

approved.


#11

ჩემი ფუნქციის ორივე ვერსია ამოწმებს, რომ მეორე ცხრილს ჰქონდეს პირველი ცხრილის შესტყვისი ოდენობა და მისი არქონის შემთხვევაში ტირის მერე ამატებს სიცარიელეს, თუ ტირეც არ გინდა, მაშინ ასე იქნება:

function შეარწყე (ცხრ1, ცხრ2) {
	var შედეგი = [];
	ცხრ1.forEach(function (ოდენობა, ინდექსი) {
		შედეგი.push(ოდენობა,  ცხრ2[ინდექსი] ?  "-"  + ცხრ2[ინდექსი]  : "");
	});
	return შედეგი;
}