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

回答編集履歴

5

リンク修正

2016/07/19 14:25

投稿

bluevinyl
bluevinyl

スコア129

answer CHANGED
@@ -3,7 +3,7 @@
3
3
  ```python
4
4
  list_a = [item for item in list_a if not item[0].isdigit()]
5
5
  ```
6
- 単純に漢数字が含まれる文字列を除去するなら、文字列をループして in で調べるか、[any()](http://docs.python.jp/3.5/library/functions.html#all)を使ってもいいと思います。
6
+ 単純に漢数字が含まれる文字列を除去するなら、文字列をループして in で調べるか、[any()](http://docs.python.jp/3.5/library/functions.html#any)を使ってもいいと思います。
7
7
  ```python
8
8
  characters = ['一', '二', '三', '四', '五', '六', '七', '八', '九', '十']
9
9
 

4

追加修正

2016/07/19 14:25

投稿

bluevinyl
bluevinyl

スコア129

answer CHANGED
@@ -3,7 +3,7 @@
3
3
  ```python
4
4
  list_a = [item for item in list_a if not item[0].isdigit()]
5
5
  ```
6
- 単純に漢数字が含まれる文字列を除去するなら、文字列をループして in で調べるか、[any](http://docs.python.jp/3.5/library/functions.html#all)を使ってもいいと思います。
6
+ 単純に漢数字が含まれる文字列を除去するなら、文字列をループして in で調べるか、[any()](http://docs.python.jp/3.5/library/functions.html#all)を使ってもいいと思います。
7
7
  ```python
8
8
  characters = ['一', '二', '三', '四', '五', '六', '七', '八', '九', '十']
9
9
 

3

追加修正

2016/07/19 13:57

投稿

bluevinyl
bluevinyl

スコア129

answer CHANGED
@@ -3,7 +3,7 @@
3
3
  ```python
4
4
  list_a = [item for item in list_a if not item[0].isdigit()]
5
5
  ```
6
- 単純に漢数字が含まれる文字列を除去するなら、文字列をループして in を使って調べればいいと思います。
6
+ 単純に漢数字が含まれる文字列を除去するなら、文字列をループして in で調べるか、[any](http://docs.python.jp/3.5/library/functions.html#all)を使っていいと思います。
7
7
  ```python
8
8
  characters = ['一', '二', '三', '四', '五', '六', '七', '八', '九', '十']
9
9
 
@@ -15,6 +15,15 @@
15
15
  else:
16
16
  list_b.append(string)
17
17
  print(list_b)
18
+
19
+ #or
20
+
21
+ list_b = []
22
+ for string in list_a:
23
+ if not any(s in characters for s in string):
24
+ list_b.append(string)
25
+ print(list_b)
26
+
18
27
  ```
19
28
  質問の例にあるように全てが漢数字の文字列だけを除去するなら、[all()](http://docs.python.jp/3.5/library/functions.html#all)で出来ます。
20
29
  ```python

2

追加修正

2016/07/19 13:55

投稿

bluevinyl
bluevinyl

スコア129

answer CHANGED
@@ -4,7 +4,6 @@
4
4
  list_a = [item for item in list_a if not item[0].isdigit()]
5
5
  ```
6
6
  単純に漢数字が含まれる文字列を除去するなら、文字列をループして in を使って調べればいいと思います。
7
- 質問の例にあるように全てが漢数字の文字列だけを除去するなら、正規表現を使ったほうがいいでしょう。
8
7
  ```python
9
8
  characters = ['一', '二', '三', '四', '五', '六', '七', '八', '九', '十']
10
9
 
@@ -16,4 +15,12 @@
16
15
  else:
17
16
  list_b.append(string)
18
17
  print(list_b)
18
+ ```
19
+ 質問の例にあるように全てが漢数字の文字列だけを除去するなら、[all()](http://docs.python.jp/3.5/library/functions.html#all)で出来ます。
20
+ ```python
21
+ list_b = []
22
+ for string in list_a:
23
+ if not all(s in characters for s in string):
24
+ list_b.append(string)
25
+ print(list_b)
19
26
  ```

1

リンク追加

2016/07/19 13:35

投稿

bluevinyl
bluevinyl

スコア129

answer CHANGED
@@ -1,5 +1,5 @@
1
1
  数字自体と数字で始まるものを除去する(数字で始まらないが数字が含まれる文字列は除去しない)
2
- ならisdigitメソッドで文字列の最初を数字かどうか確認することで可能です。
2
+ なら[isdigit](http://docs.python.jp/3.5/library/stdtypes.html#str.isdigit)メソッドで文字列の最初を数字かどうか確認することで可能です。
3
3
  ```python
4
4
  list_a = [item for item in list_a if not item[0].isdigit()]
5
5
  ```