# データ
documents = [
"Python is a popular programming language.",
"It is known for its simplicity and readability.",
"Python has a large community of developers.",
"Python is widely used in web development."
]
# データの前処理
def preprocess(text):
return text.lower()
# インデックスの作成
def create_index(documents):
index = {}
for doc_id, doc in enumerate(documents):
doc = preprocess(doc)
words = doc.split()
for word in words:
if word not in index:
index[word] = []
index[word].append(doc_id)
return index
# クエリ処理
def search(query, index):
query = preprocess(query)
words = query.split()
result = set(range(len(documents)))
for word in words:
if word in index:
result &= set(index[word])
return [documents[i] for i in result]
# メイン
if __name__ == "__main__":
index = create_index(documents)
while True:
query = input("検索クエリを入力してください (終了するには 'exit' を入力): ")
if query == 'exit':
break
results = search(query, index)
if results:
for i, result in enumerate(results, start=1):
print(f"{i}. {result}")
else:
print("一致する文書はありません。")
タグ: programming
python todoリスト
import os
# ファイル名
todo_filename = 'todo.txt'
# TODOリストを表示する関数
def show_todo_list():
if os.path.exists(todo_filename):
with open(todo_filename, 'r') as file:
todo_list = file.readlines()
if todo_list:
print("TODOリスト:")
for i, item in enumerate(todo_list, start=1):
print(f"{i}. {item.strip()}")
else:
print("TODOリストは空です。")
else:
print("TODOリストはまだ作成されていません。")
# TODOアイテムを追加する関数
def add_todo_item(item):
with open(todo_filename, 'a') as file:
file.write(item + '\n')
print(f"'{item}' をTODOリストに追加しました。")
# TODOアイテムを削除する関数
def remove_todo_item(item_number):
if os.path.exists(todo_filename):
with open(todo_filename, 'r') as file:
todo_list = file.readlines()
if 1 <= item_number <= len(todo_list):
removed_item = todo_list.pop(item_number - 1).strip()
with open(todo_filename, 'w') as file:
file.writelines(todo_list)
print(f"'{removed_item}' をTODOリストから削除しました。")
else:
print("指定された番号のTODOアイテムは存在しません。")
else:
print("TODOリストはまだ作成されていません。")
# メインメニューを表示する関数
def main_menu():
while True:
print("\nメニュー:")
print("1. TODOリストを表示")
print("2. TODOアイテムを追加")
print("3. TODOアイテムを削除")
print("4. 終了")
choice = input("選択してください: ")
if choice == '1':
show_todo_list()
elif choice == '2':
item = input("追加するTODOアイテムを入力してください: ")
add_todo_item(item)
elif choice == '3':
show_todo_list()
item_number = int(input("削除するTODOアイテムの番号を入力してください: "))
remove_todo_item(item_number)
elif choice == '4':
print("アプリケーションを終了します。")
break
else:
print("無効な選択です。再度選択してください。")
if __name__ == "__main__":
main_menu()
Javascript 複数のスクリプトを読みこむ
index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My JavaScript</title>
</head>
<body>
<script src="main.js"></script>
<script src="sub.js"></script>
</body>
</html>main.js
'use strict';
{
let x = 10;
console.log(x);
}
sub.js
'use strict';
{
let x = 20;
console.log(x);
}Javascript スコープ
index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My JavaScript</title>
</head>
<body>
<script src="main.js"></script>
</body>
</html>main.js
'use strict';
let x = 10;
{
x = 20;
console.log(x);
}
console.log(x);Javascript 論理演算子
index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My JavaScript</title>
</head>
<body>
<script src="main.js"></script>
</body>
</html>main.js
'use strict';
const english = Number(prompt('English'));
const math = Number(prompt('Math?'));
if(!(english >= 80 && math >= 80)){
console.log(`A`);
}else{
console.log(`B`);
}Javascript 条件演算子
index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My JavaScript</title>
</head>
<body>
<script src="main.js"></script>
</body>
</html>main.js
'use strict';
const score = Number(prompt('Score?'));
const result = score > 80 ? `A` : `B`;
console.log(result);Javascript break、continue
index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My JavaScript</title>
</head>
<body>
<script src="main.js"></script>
</body>
</html>main.js
'use strict';
let amount = 100;
for (let year = 1; year <= 30; year++){
amount *= 1.05;
if(amount < 200){
continue;
}
if(amount > 300){
break;
}
console.log(`Year ${amount}`);
}Javascript do while
index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My JavaScript</title>
</head>
<body>
<script src="main.js"></script>
</body>
</html>main.js
'use strict';
// const command = Number(prompt('Menu 1, 2, 3 or 0 to exit'));
// console.log(`Menu ${command} processed.`);
//let command = Number(prompt('Menu 1, 2, 3 or 0 to exit'));
//while (command !== 0) {
// console.log(`Menu ${command} processed.`);
// command = Number(prompt('Menu 1, 2, 3 or 0 to exit'));
//}
let command;
do {
command = Number(prompt('Menu 1, 2, 3 or 0 to exit'));
if (command === 0) {
console.log('Exited');
} else {
console.log(`Menu ${command} processed.`);
}
} while (command !== 0);
Javascript while
index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My JavaScript</title>
</head>
<body>
<script src="main.js"></script>
</body>
</html>main.js
'use strict';
// const command = Number(prompt('Menu 1, 2, 3 or 0 to exit'));
// console.log(`Menu ${command} processed.`);
let command = Number(prompt('Menu 1, 2, 3 or 0 to exit'));
while (command !== 0) {
console.log(`Menu ${command} processed.`);
command = Number(prompt('Menu 1, 2, 3 or 0 to exit'));
}Javascript forの中でforを使う
index.html
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My JavaScript</title>
</head>
<body>
<script src="main.js"></script>
</body>
</html>main.js
'use strict';
let price;
const rate = 1.1;
for(let price = 150; price <= 160; price++){
console.log('Price: ${price}');
for(let amount = 120; amount <= 140; amount+=10){
console.log(price * amount * rate);
}
}