teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2020/09/10 10:43

投稿

yureighost
yureighost

スコア2183

answer CHANGED
@@ -30,4 +30,30 @@
30
30
  ('男', '男', '女', '女', '男', '男', '男', '男', '女', '女', '女', '女')
31
31
  ('1977/04/04', '1966/09/04', '1979/06/08', '1977/04/04', '1963/11/06', '1967/12/07', '1972/08/21', '1992/03/14', '1992/11/30', '1988/07/15', '1965/03/20', '1992/11/30')
32
32
  '''
33
+ ```
34
+
35
+ **追記**
36
+ そういえば文字列順になってしまってますね。
37
+ itemgetterではなくlambdaで1つ目の配列の値をint型に変えた物をソート条件とすれば数値順に並びます。
38
+ ```python
39
+ # zipで二つの配列を統合
40
+ c = zip(no, 姓 ,名 ,性別 ,生年月日)
41
+
42
+ c = sorted(c, key=lambda x: int(x[0]))
43
+
44
+ # 統合していた配列をもとに戻す
45
+ no, 姓 ,名 ,性別 ,生年月日 = zip(*c)
46
+
47
+ print(no)
48
+ print(姓)
49
+ print(名)
50
+ print(性別)
51
+ print(生年月日)
52
+ '''
53
+ ('1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12')
54
+ ('山田', '稲田', '石村', '木内', '根本', '清野', '渡邊', '本郷', '三宅', '柳川', '清野', '阿部')
55
+ ('比呂', '和徳', '比呂', '喜雄', '駿斗', '菜緒', '沙樹', '香帆', '美南', '和臣', '菜緒', '亜依')
56
+ ('男', '男', '男', '男', '男', '女', '女', '女', '女', '男', '女', '女')
57
+ ('1977/04/04', '1963/11/06', '1967/12/07', '1972/08/21', '1992/03/14', '1992/11/30', '1988/07/15', '1965/03/20', '1992/11/30', '1966/09/04', '1979/06/08', '1977/04/04')
58
+ '''
33
59
  ```