Created
April 11, 2017 03:22
-
-
Save 534o/51d848960c03567535a77b2380505e0a to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#-*- coding:utf-8 -*- | |
#!/usr/bin/env python | |
name = { | |
'ROSは何の略でしょう?': 'Robot Operating Sysem', | |
'ROSディストリビューションのリリース時期の正しい順番は?': 'Hydro Indigo Kinetic', | |
'Ubuntuディストリビューションのリリース時期の正しい順番は?': 'Precise Trusty Xenial', | |
'RPCは何の略でしょう?': 'Remote Procedure Call', | |
} | |
# https://robotics.naist.jp/edu/text/?Robotics%2Flinux-command | |
unix = {'Unixコマンドでマニュアルを見るには?': 'man', | |
'Unixコマンドで今いるディレクトリのファイル一覧を見るには?': 'ls', | |
'Unixコマンドで今いるディレクトリのパスを見るには?': 'pwd', | |
'Unixコマンドでディレクトリを移動するには?': 'cd', | |
'Unixコマンドでディレクトリを作るには?': 'mkdir', | |
'Unixコマンドでファイルを消すには?': 'rm', | |
'Unixコマンドでディレクトリを消すには?': 'rm -r', | |
'Unixコマンドでファイルをコピーするには?': 'cp', | |
'Unixコマンドでファイルを移動するには?': 'mv', | |
'Unixコマンドでファイルのりインクを作成するには?': 'ln', | |
'Unixコマンドでテキストファイルをページャで見るには?': 'less', | |
'Unixコマンドでファイルの内容を標準出力に表示するには?': 'cat', | |
'Unixコマンドでファイルから特定の文字を検索するには?': 'grep'} | |
# https://robotics.naist.jp/edu/text/?Robotics%2Flinux-command | |
rospack = { | |
'ROSコマンドでパッケージが存在するディクトリを表示するには?': 'rospack find [package]', | |
'ROSコマンドでパッケージを移動するには?': 'roscd [package]', | |
'ROSコマンドでパッケージの中身のファイル一覧を見るには?': 'rosls [package]', | |
'ROSコマンドでパッケージ内のファイルをエディタで開くには?': 'rosed [package] [file]', | |
'ROSコマンドでパッケージ内のファイルを?': 'roscp [package] [file] [destination]', | |
'ROSコマンドでパッケージが依存する別のパッケージをインストールするには?': 'rosdep install [package]', | |
'ROSコマンドでマスタを立ち上げるには?': 'roscore', | |
'ROSコマンドでパッケージ内のノードを実行するには?': 'rosrun [package] [node]', | |
'ROSコマンドでファイルに記述されたノードの立ち上げや,パラメータのセットをするには?': 'roslaunch [package] [file]', | |
} | |
rosnode = { | |
'ROSコマンドでノードが存在するか確認するには?': 'rosnode ping', | |
'ROSコマンドでノードの一覧を表示するには?': 'rosnode list', | |
'ROSコマンドでノードの情報を表示するには?': 'rosnode info', | |
'ROSコマンドでノードが存在するマシンを表示するには?': 'rosnode machine', | |
'ROSコマンドでノードを終了させるには?': 'rosnode kill', | |
} | |
rostopic = { | |
'ROSコマンドでトピックの伝送速度を計測するには?': 'rostopic bw', | |
'ROSコマンドでトピックの内容を表示するには?': 'rostopic echo', | |
'ROSコマンドでトピックの周期を計測するには?': 'rostopic hz', | |
'ROSコマンドでトピックの情報を表示するには?': 'rostopic info', | |
'ROSコマンドでトピックの一覧を表示するには?': 'rostopic list', | |
'ROSコマンドでトピックを送信するには?': 'rostopic pub', | |
'ROSコマンドでトピックの型を表示するには?': 'rostopic type', | |
} | |
rosservice = { | |
'ROSコマンドでサービスの一覧を表示するには?': 'rosservice list', | |
'ROSコマンドでサービスを提供しているノードを表示する?': 'rosservice node', | |
'ROSコマンドでサービスを呼ぶには?': 'rosservice call', | |
'ROSコマンドでサービスの引数を表示するには?': 'rosservice args', | |
'ROSコマンドでサービスの型を表示するには?': 'rosservice type', | |
'ROSコマンドでサービスのROSRPC URIを表示するには?': 'rosservice find', | |
'ROSコマンドで特定の型のサービスを表示するにあは?': 'rosservice type', | |
} | |
rosconsole = { | |
'ROSコマンドでLoggerのレベルを表示するには?': 'rosconsole get', | |
'ROSコマンドでLoggerを持ったノード一覧を表示するには?': 'rosconsole list', | |
'ROSコマンドでLoggerのレベルをセットするには?': 'rosconsole set', | |
} | |
rosparam = { | |
'ROSコマンドでパラメータをセットするには?': 'rosparam set', | |
'ROSコマンドでパラメータを表示するには?': 'rosparam get', | |
'ROSコマンドでパラメータをファイルから読み込むにはには?': 'rosparam load', | |
'ROSコマンドでパラメータをファイルへ書き出すには?': 'rosparam dump', | |
'ROSコマンドでパラメータを消去するには?': 'rosparam delete', | |
'ROSコマンドでパラメータ一覧を表示をには?': 'rosparam list', | |
} | |
rosmsg = { | |
'ROSコマンドでメッセージファイルの中身を表示するには?': 'rosmsg show', | |
'ROSコマンドで全てのメッセージファイル一覧を表示するには?': 'rosmsg list', | |
'ROSコマンドでメッセージファイルのMD5を表示する?': 'rosmsg md5', | |
'ROSコマンドでパッケージ内のメッセージファイル一覧を表示するには?': 'rosmsg package', | |
'ROSコマンドでメッセージファイルを利用しているパッケージ一覧を表示するには?': 'rosmsg packages', | |
# using examles is better??? | |
# 'ROSコマンドでPoseメッセージを表示するには?': 'rosmsg show Pose', | |
# 'ROSコマンドでnav_msgsパッケージ内のメッセージ一覧を表示するには?': 'rosmsg package nav_msgs', | |
# 'ROSコマンドでsensor_msgs/CameraInfoメッセージを利用しているパッケージ一覧を表示するには?': 'rosmsg packages sensor_msgs/CameraInfo', | |
# too easy? | |
} | |
rossrv = { | |
'ROSコマンドでサービスファイルの中身を表示するには?': 'rossrv show', | |
'ROSコマンドで全てのサービスファイル一覧を表示するには?': 'rossrv list', | |
'ROSコマンドでサービスファイルのMD5を表示する?': 'rossrv md5', | |
'ROSコマンドでパッケージ内のサービスファイル一覧を表示するには?': 'rossrv package', | |
'ROSコマンドでサービスファイルを利用しているパッケージ一覧を表示するには?': 'rossrv packages', | |
} | |
logging = { | |
'ROSコマンドでトピックをbagファイルに保存するには?': 'rosbag record', | |
'ROSコマンドでbagファイルで保存されたトピックを送信するには?': 'rosbag play', | |
'ROSコマンドでbagファイルを圧縮するには': 'rosbag compress', | |
'ROSコマンドでbagファイルを解凍するには': 'rosbag decompress', | |
'ROSコマンドでbagファイルを中身にフィルタを掛けるには': 'rosbag filter', | |
# topic_tools relay の使い方とかあったほうがいいか? | |
'ROSコマンドでフレーム間の変換を表示するには': 'rosrun tf tf_echo', | |
'ROSコマンドでフレームのツリー構造を表示するには': 'rosrun tf2 tools view frames.py', | |
} | |
faq = { | |
'[rospack] Error: package \'tf2_tools\' not found というエラーが出た時の対処法は?': 'sudo apt-get install ros-indigo-tf2-tools', | |
'SyntaxError: Non-ASCII character \'\xe3\' in file というエラーが出た時の対処法は?': '行頭に#-*- coding:utf-8 -*-を追加する', | |
'roscore: command not found というエラーが出た時の対処法は?': 'source /opt/ros/indigo/setup.bashとする', | |
} | |
# 'ROSコマンドでサービス?': 'rosservice ', | |
# 'ROSコマンドでサービス?': 'rosservice ', | |
# 'ROSコマンドでサービス?': 'rosservice ', | |
# 'ROSコマンドでサービス?': 'rosservice ', | |
# 'ROSコマンドで?': '', | |
# 'ROSコマンドで?': '', | |
# 'ROSコマンドで?': '', | |
# 'ROSコマンドで?': '', | |
# 'ROSコマンドで?': '', | |
# 'ROSコマンドで?': '', | |
import random | |
questions = [name, unix, rospack, rosnode, rostopic, rosservice, rosconsole, rosparam, rosmsg, rossrv, logging, faq] | |
random.seed() | |
for question in questions: | |
# get q&a | |
while len(question) >= 3: | |
q = random.choice(question.keys()) | |
a = [question.pop(q)] # remove from question | |
for i in range(2): | |
a.append(question.pop(random.choice(question.keys()))) | |
random.shuffle(a) | |
print q | |
for i in range(len(a)): | |
print("{}. {}".format(i, a[i])) | |
print("{}. その他\n".format(len(a))) | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment