Message in a bottle

海に流すボトルメッセージのような、脈絡もないことを書き連ねていくブログです

pipコマンドで任意のバージョンのライブラリを入れる【python】

これで5時間ぐらい詰まったので備忘録として。


現在Tensorflowがpython3.6までしか対応していなかったり、たまに古いバージョンのpythonが必要になります。

そのため気まぐれでpythonバージョンアップしちゃったら

  • pipコマンドもバージョンアップされちゃって、新しいpythonにしかライブラリ入れてくれない
  • 古いpythonを使いたい


と思う人もいるのではないでしょうか。この記事はそんな人に向けた解決法です。

指定したバージョンにライブラリをインストール

python(インストールしたいversion) -m pip install (インストールしたいライブラリ)

これでインストールすることができます。

例えばpython3.6にnumpyを入れたい場合は

python3.6 -m pip install numpy

と入力してあげれば大丈夫です。

古いpythonを使いたい

普通にコマンドライン上でpythonと実行すると、意図してないバージョンのpythonで実行されて困っている人向けです。

python(使いたいversion)

これで十分です。

例えば、python2.7を使いたいときは

python2.7

で実行します。

プログラム中で指定してあげたいという場合は、コードの一番上に

#! /usr/bin/env python(使いたいversion)

を入れてあげれば、そのプログラムを実行するときはそのバージョンで動きます。

【python】自然言語処理100本ノックやってみた!【06本目】

演習問題が載っているサイトはこちらです。

言語処理100本ノック 2015

06.集合

"paraparaparadise"と"paragraph"に含まれる文字bi-gramの集合を,それぞれ, XとYとして求め,XとYの和集合,積集合,差集合を求めよ.
さらに,'se'というbi-gramがXおよびYに含まれるかどうかを調べよ.

  • 和集合とは、どちらの要素にも属する集合であること
  • 積集合とはどちらにも含まれている要素の集合であること
  • 差集合とはある集合の要素に属していて、他の集合には属していない要素の集合

ということが解れば、この問題は解けます。

def ngram(text,n,X):
    lastnum=len(text)-n+1
    text_list=[]
    for i in range(lastnum):
        X.append(text[i:i+n])

text1="paraparaparadise"
text2="paragraph"
X=[]
Y=[]
union=[]
intersection=[]
difference_set=[]
ngram(text1,2,X)
ngram(text2,2,Y)

#和集合を求める
for i in range(len(X)):
    union.append(X[i])
for u in range(len(Y)):
    if(Y[u] not in union):
        union.append(Y[u])
print(union)

#積集合を求める
for i in range(len(X)):
    if(X[i] in Y):
        intersection.append(X[i])
print(intersection)

#差集合を求める
for i in range(len(X)):
    if(X[i] not in Y):
        difference_set.append(X[i])
print(difference_set)

#seの有無を調べる
checked=False
for i in range(len(X)):
    if "se" in X[i]:
        checked=True
for u in range(len(Y)):
    if "se" in Y[u]:
        checked=True
print(checked)

オナ禁を破りたくなる理由と、その対策

オナ禁中寄ってくる様々な誘惑・・・

これに惑わされて

まぁ今回ぐらいいっか!

ってなっていると永遠にオナ禁の記録の壁を超えられません。

 

そこで(自戒の意味も込めて)今回は、ふと破りたくなる理由と、その対策について書いていきます!

 

(してしまうとこんなデメリットがありますよ・・・)

www.lifebefree.net

 

 

 

夜中に不意にエロいものを見てしまった 

 

最近は広告でもエロいものが出てきてしまって

意識してないのに見て知って不意にムラムラきた・・・

ってこともあると思います。

 

そんな時はまず、一回トイレに行ってみましょう。

そこで深呼吸。

最後に、本当にムラムラしていたかもう一回自分に問いかけましょう。

 

我慢できなくなってきた

 

最初の頃によくある症状だと思います。

そんな時は

  • 筋トレなどの運動で体力を使い切る
  • 他に集中できるものを見つけて、それに集中する

などといった手段で乗り切りましょう。我慢しようと思ってもむしろ逆効果です。

 

したらどうなるか気になってきた

 

20日ぐらい我慢してると

あれ、リセットしたらどうなるんだっけ? とか

リセットするとどのくらい気持ちがいいんだっけ??

とか余計なことを考え始めます。

 

やめましょう。どうせ後悔します。

その先には後悔しかないと、心に刻みつけておきましょう。(体験談)

 

 

精神的に落ち込んだ

 

 精神的に落ち込んだ時にはついついリセットに走りがちですね。

しかし、リセットしようと精神的に落ち込んだものは変わりません!!

期待しただけ損です!!!(体験談)

 

他にストレス解消できるものを見つけましょう。

カラオケとかおすすめです。

 

 

ラッキースケベしてしまった

 

潔く、諦めてリセットしましょう。

 

 

 

 

・・・・・

・・・

 

我慢したいというんだったら我慢できなくなってきた対策と同様に

他のことに集中して気を紛らわせましょう。

 

夢精してしまったし・・・

 

夢精とリセットは大きく体へのダメージが違います。(体験談)

夢精は2、3日たてばまた元の状態に戻れるので、安心してそのまま続けてもいいと思います。

リセットする理由にはならないですよ!(自戒)

 

 

 

 

 

 

 

 

【体験談】中期間続いたオナ禁リセットのデメリット

こんにちは。

 

また・・・

また・・・・・・

リセットしてしまいました。

でも、このままデメリットして落ち込むだけでは割にあいません。

 

ということで今回は20日と80日のオナ禁をしてきた自分が実際にリセットした時に体験したデメリットについて話していきたいと思います。

リセットするたびに、ここの体験談に追記することになります笑

 

できればもう二度と書き込みたくないですね!!!

 

 

 

体がだるくなる

 

特にした翌日なのですが、尋常に体がだるいです。

する前はどうせしたとしてもあんま変わらないだろ

とか思っていたのですが、やっぱりすると疲れるんですね。翌日がきついです。

治るまで2、3日かかります。

 

 

自信が減る

 

自分はオナ禁してるんだ!他の人よりすごいんだぞ!

という謎の自信が消え去ります。

まぁリセットしてしまったし、当然ですよね。

 

 

起きた後も眠い

 

1つ目の体がだるくなるのと、似たようなことですが、一日中眠いです。

本当にひどい時は、歩きながら寝たりしてました笑

 

 

集中できなくなる

 

体がだるいので、十分なパフォーマンスも出せないので、集中もできないです。

まぁオナ禁中もムラムラしてて、どっちみち集中できなかったのですが、やっぱ禁止している時の方が、集中力はよかったです。

 

体が脂ぎる・匂いがする

 

オナ禁中はサラサラだった髪が脂ぎったり、顔もてかてかしたりしてきます。

その影響か、結構匂いも出てきたりしてます。

これだとモテるものもモテませんね。

 

まぁオナ禁中も目立ってモテてはなかったんですけど!!

 

何もかもめんどくさくなる

 

なぜか知りませんが、やる気が無くなります。

まぁオナ禁するっていう目標を守れなかったからですかね。

 

 

 

 

 

 

ご注文はKerasですか?

あぁ^〜 心がぴょんぴょんするんじゃあ^〜

人生疲れたときにごちうさ見ると心が癒されますよね。

 

って思いながらネットサーフィンしてたらこのような記事に出会いました。

kivantium.hateblo.jp

 

Deep Learningを使ってごちうさのキャラの画像認識を行うというものでした。

 

・・・Kerasでもやってみたい!!!

 

ていうことでぴょんぴょんしていきましょう。

 

 

ラッキーアイテムはOpenCvと識別器とNicoVideo

 

顔認識はOpencvを使ってあげます。

http://anime.udp.jp/data/lbpcascade_animeface.xml

から識別器を入手。

nicovideo-dlを入手し、(自分は以下のリンクから直接入手しました)

https://osdn.net/projects/nicovideo-dl/

  www.nicovideo.jp

 

をダウンロードしましょう。

ダウンロードした後にこのファイルを実行して画像を200枚ほどとります。

本家と同じようにC++ではなくpythonです。 どっちもぴょんぴょんするからいいよね!!

import cv2
import time
import sys
import os


def main():
    # ディレクトリの作成
    output_dir = "image_outputs"
    if not os.path.exists(output_dir):
        os.mkdir(output_dir)
    # 動画を読み込む
    video = cv2.VideoCapture("1397552685.mp4")
    # 識別器を読み込む
    cascade = cv2.CascadeClassifier("lbpcascade_animeface.xml")

    # 読み込めなかった場合、強制終了する
    if not video.isOpened():
        print("failed")
        sys.exit()

    framecount = -1
    imagecount = 0
    while True:
        framecount += 1
        ret, frame = video.read()
        if framecount % 10 != 0:
            continue
        # 処理を高速化するためにグレースケールにする
        gray_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
        # 顔の検出 返される形は[[x,y,w,h],[x,y,w,h]..]
        face = cascade.detectMultiScale(
            gray_frame, scaleFactor=1.1, minNeighbors=5, minSize=(100, 100))
        # 顔が存在した場合に保存を行う
        if len(face) != 0:
            for i, (x, y, w, h) in enumerate(face):
                face_image = frame[y:y + h, x:x + w]
                imagename = "image" + str(imagecount) + ".png"
                imagepath = os.path.join(output_dir, imagename)
                cv2.imwrite(imagepath, face_image)
                imagecount += 1
        if imagecount > 200:
            break

    video.release()


if __name__ == "__main__":
    main()

Keras襲来

ここでKerasを使って大規模学習用のデータ学習器を作ります。
認識するのは 主要キャラクター5人とその他、計6クラスです。
画像による色の違いがあまりないように、画像の正規化を行なってあげましょう。
ネットワークの構築は適当です。 多分ここら辺をもう少し頑張ってあげると精度が向上すると思います。

from keras import models
from keras import layers
from keras import regularizers
import glob
import sys
import cv2
import matplotlib.pyplot as plt
import numpy as np



class Processing_Image:
    # 画像の読み込みを行い、リストに保存する
    def loadimage(self):
        image_list = []
        list_trainlabel = []

        for i in range(6):
            trainlabel = [0 for i in range(6)]
            trainlabel[i] = 1
            file_t = glob.glob("images_train_gen_" + str(i) + "/image*")
            for u in range(len(file_t)):
                image = cv2.imread("images_train_gen_" + str(i) +
                                   "/image_" + str(i) + "_" + str(u) + ".png")

                height, width, ch = image.shape
                # 画像の大きさが一律でないため、大きさを揃える
                if height >= 100 or width >= 100:
                    image = cv2.resize(image, dsize=(100, 100),
                                       interpolation=cv2.INTER_AREA)
                else:
                    image = cv2.resize(image, dsize=(100, 100),
                                       interpolation=cv2.INTER_LINEAR)
                height, width, ch = image.shape
                norm = np.zeros((height, width))
                # 画像の正規化
                image = cv2.normalize(
                    image, norm, 0, 1, norm_type=cv2.NORM_MINMAX)
                image_list.append(np.array(image))
                list_trainlabel.append(trainlabel)
        return image_list, np.array(list_trainlabel)


class Neural_NetWork:
    def constract_network(self):
        model = models.Sequential()
        model.add(layers.Conv2D(32, (3, 3), activation="relu",
                                input_shape=(100, 100, 3)))
        model.add(layers.MaxPooling2D((2, 2)))
        model.add(layers.Conv2D(64, (3, 3), activation="relu"))
        model.add(layers.MaxPooling2D((2, 2)))
        model.add(layers.Conv2D(128, (3, 3), activation="relu"))
        model.add(layers.MaxPooling2D((2, 2)))
        model.add(layers.Conv2D(128, (3, 3), activation="relu"))
        model.add(layers.MaxPooling2D((2, 2)))
        model.add(layers.Flatten())
        model.add(layers.Dropout(0.5))
        model.add(layers.Dense(
            512, kernel_regularizer=regularizers.l2(0.001), activation="relu"))
        model.add(layers.Dense(6, activation="sigmoid"))
        # Adadeltaいいっぽい
        model.compile(optimizer="Adadelta",
                      loss="binary_crossentropy", metrics=["accuracy"])
        return model

    def calculate_network(self, model, x_train, y_train, x_test, y_test):
        history = model.fit(x_train, y_train, epochs=20,
                            batch_size=256, validation_data=(x_test, y_test))
        model.save("bigdata_gotiusa_256_e20.h5")
        return history

    def plot_histrory(self, history):
        acc = history.history["acc"]
        val_acc = history.history["val_acc"]
        epochs = range(1, len(acc)+1)
        plt.plot(epochs, acc, "bo", label="Training acc")
        plt.plot(epochs, val_acc, "b", label="Validation acc")
        plt.title("Training and Validation acciracy")
        plt.xlabel("Epochs")
        plt.ylabel("Accuracy")
        plt.legend()
        plt.show()

    def plot_loss(self, history):
        loss = history.history['loss']
        val_loss = history.history['loss']

        epochs = range(1, len(loss) + 1)
        plt.plot(epochs, loss, 'bo', label='Training loss')
        plt.plot(epochs, val_loss, 'b', label='Validation loss')
        plt.xlabel('Epochs')
        plt.ylabel('Loss')
        plt.legend()
        plt.show()


def main():

    Process = Processing_Image()
    image_list, trainlabel = Process.loadimage()
    x_train, x_test, y_train, y_test = [], [], [], []
    for i in range(min(len(image_list), len(trainlabel))):
        if i % 50 == 0:
            x_test.append(image_list[i])
            y_test.append(trainlabel[i])
        else:
            x_train.append(image_list[i])
            y_train.append(trainlabel[i])


    Neural_NetWorks = Neural_NetWork()
    model = Neural_NetWorks.constract_network()
    history = Neural_NetWorks.calculate_network(
        model, np.array(x_train), np.array(y_train), np.array(x_test), np.array(y_test))
    Neural_NetWorks.plot_loss(history)
    Neural_NetWorks.plot_histrory(history)


if __name__ == "__main__":
    main()

Keras Horizon

前のやつで学習したものを用い、大規模データを生成します。
他のごちうさのデータをとってきてあげたりして、15000枚前後集めました。
(gotiusa_kerasは前のpythonファイルの名前です)

from gotiusa_keras import Neural_NetWork, Processing_Image
import os
import cv2
import sys


def make_direktory():
    for i in range(6):
        name_dir = "images_" + str(i)
        if not os.path.exists(name_dir):
            os.mkdir(name_dir)


def main():
    make_direktory()
    network = Neural_NetWork()
    process = Processing_Image()
    model = network.constract_network()
    model.load_weights("mindata_gotiusa.h5")
    # 動画を読み込む
    video = cv2.VideoCapture("gotiusa_movie.mp4")
    # 識別器を読み込む
    cascade = cv2.CascadeClassifier("lbpcascade_animeface.xml")
    # 読み込めなかった場合、強制終了する
    if not video.isOpened():
        print("failed")
        sys.exit()
    framecount = -1
    imagecount = 0
    list_numofimage = [0 for i in range(6)]

    while True:
        framecount += 1
        ret, frame = video.read()
        if framecount % 3 != 0:
            continue
        # 処理を高速化するためにグレースケールにする
        gray_frame = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
        # 顔の検出 返される形は[[x,y,w,h],[x,y,w,h]..]
        face = cascade.detectMultiScale(
            gray_frame, scaleFactor=1.1, minNeighbors=5, minSize=(100, 100))
        # 顔が存在した場合に保存を行う
        if len(face) != 0:
            for i, (x, y, w, h) in enumerate(face):
                face_image = frame[y:y + h, x:x + w]
                image = face_image
                height, width, ch = image.shape
                # 画像の大きさが一律でないため、大きさを揃える
                if height >= 100 or width >= 100:
                    image = cv2.resize(image, dsize=(100, 100),
                                       interpolation=cv2.INTER_AREA)
                else:
                    image = cv2.resize(image, dsize=(100, 100),
                                       interpolation=cv2.INTER_LINEAR)
                height, width, ch = image.shape
                import numpy as np
                norm = np.zeros((height, width))
                # 画像の正規化
                images = cv2.normalize(
                    image, norm, 0, 1, norm_type=cv2.NORM_MINMAX)
                prediction = model.predict(np.array([images]))
                prediction = prediction.tolist()[0]
                max_index = prediction.index(max(prediction))
                imagename = "image" + str(list_numofimage[max_index]) + ".png"
                output_dir = "images_" + str(max_index)
                imagepath = os.path.join(output_dir, imagename)
                #cv2.imwrite(imagepath, face_image)
                list_numofimage[max_index] += 1
                imagename = "image" + str(imagecount) + ".png"
                #imagepath = os.path.join(output_dir, imagename)
                cv2.imwrite(imagepath, face_image)
                imagecount += 1
        if imagecount > 20000:
            print("sucess")
            break


if __name__ == "__main__":
    main()

f:id:umi-0315:20191022000837p:plain f:id:umi-0315:20191022000833p:plain f:id:umi-0315:20191022000837p:plain

大体はうまくいってるのですが、まだ少し誤認識があるので手作業で、ディレクトリを移動します。

長くなってきたので、続きは次回へ!

オナ禁×筋トレ 感じたメリット、デメリット【〜20日目】

f:id:umi-0315:20191021010605j:plain

 

オナ禁20日達成することができました!!

 

 

この記事は

 

オナ禁と筋トレを同時平行したら男性ホルモン出まくりで最強になるんじゃない?

っていうのを実際に試してみた記録となります!

 

それでは、10日目から20日目までに感じたメリット、デメリット、結論に行きましょう!

 

 

【10日目までの効果が知りたい人はこちら】

オナ禁×筋トレ 感じたメリット、デメリット【〜10日目】 - Message in a bottle

 

 

 

メリット

 

  • 集中力が高まった 

一つのことをやるぞと決めたら、前よりも集中して行えるようになりました。その結果、作業効率などが上がってます!

 

 

  • 行動力が高まった

前までは、他の人とか遊びに誘うのをめんどくさがっていたのですが、今は自分からどんどん誘うようになりました!

 

 

  • 遊びの誘いが増えた

他の人がよく遊びに誘ってくれるようになりました。これもオナ禁によっていつもより明るくなったからでしょうか。

 

 

  • (自信がついて)人の顔色を伺うことが少なくなった

前までは、人の機嫌を損なわないことを一番として行動していましたが、最近では自分の言いたいことはしっかり言ったりなど、自我を持って行動ができるようになってきました。

 

 

 

デメリット

 

  • エネルギー切れを起こすことがあった

普段より活発に動いているせいか、週に1、2日は体もだるいし、やる気もなくてもう何もしたくない・・・とエネルギー切れを起こす日はありました。

 

  • あいかわらずムラムラする

たまにふと波がきます。そうなると脳がそのことで埋め尽くされて他のことを考えられなくなります。きつい。

 

 

 

(20日目までの)結論

20日目までの結論としては

しばらく様子見かな・・・?

って感じです。

 

メリットのところでも話した通り、作業効率も上がっているし、結構生活の質が上がっているように見えます。

しかし、週一でくるやる気のない日のせい(その前後もきつかったりする)であまり総合的には変わっていません

 

だけど、逆に考えてみれば今では5日分くらいで1週間分のことができるようになったということは、かなり時間処理量は上がってきてると思います!

 

 

なので、このまま疲れる日がないような効果が出てきたらそれこそスーパーサイヤ人だし、そうじゃなかったらそこでやめたらいいかって感じです!

 

筋トレのメリットはあまり感じられなくなってきています。回数を増やす、筋トレに変化を持たせるなどのことを行なって行くことが重要だと感じました。

 

また、テストステロンを増加させるような食べ物を摂取することも意識し始めました。

これもどう効果が出るのか楽しみです。

 

それでは、また30日目の記事でお会いしましょう!

 

 

オナ禁×筋トレ=最強? と思うので試してみた【22日目】

こんばんは。22日目です。

 

正直2回目でこんな長く続くとは思ってもいませんでした。ブログの力って偉大ですね。

 

今日も同じ同級生のパンチラをもろでみてしまったので、正直かなり発散したい気分ですが、ブログを書くことで必死で我慢です。

女子って黒履くんですね。白とかじゃなくてよかったです。あれは影だと思い込むことができるので。あれはパンツじゃなくて影だったんです。

 

最近、新しい女の人との出会いがあったのですが、その人が(大学生活中で)過去最高レベルに可愛くてまじで話してるだけで幸せでした。

その人とも、2回目の約束を取り付けることができました。

これもオナ禁の効果ですかね!嬉しい!

 

メリット

  • 女子からの反応が(多分)よくなってる

 

デメリット

  • したい欲で眠れなくなる

(眠るために筋トレをしたら疲れで翌日だるくなるから毎日はできない・・・)

 

 

 

 

オナ禁×筋トレ=最強? と思うので試してみた【18日目】

こんにちは。18日目です。

 

ここ最近は、あまり目新しい効果は感じられないです。これまでの効果がさらに強まったくらい。

強いて言うなら、この前会った女子の反応がいつもよりよかったぐらいです。

 

ただ逆を返せば安定してきた、とも捉えられるので、このまま継続していって過程を見ていきたいと思います。

 

 

はやくスーパーサイヤ人になりたい。

 

メリット

  • テンションがさらに高くなる
  • 人と話すのがあまり苦ではなくなる
  • 根拠のない自信が日に日に高まる

 

デメリット

  • ストレスがかなりたまる
  • 短気になる

 

・・・って思ってメリット欄書いてたんですけど結構メリットありますねやばい!

言語化してみると結構気づかなかったことも発見できるんですね・・・

オナ禁×筋トレ=最強? と思うので試してみた【14日目】

こんにちは。14日目です。

 

今日は台風と言うこともあり、外の施設はだいたいお休みしているので、家に引きこもってました。

 

特に何もすることないので部屋の模様替えでもしてたんですけど、予想外にスペースが広くなって驚きです。(しかもおしゃれになったし)

 

前回と比較して、感じられるメリットは

行動力が上がった

ことです。

 

昔は絶対しなかった、自分で遊びを計画するといったことをし始めたり、部屋の模様替えをしたり、行動力が前よりも上がっているなと思いました。

 

しかし、本当に性欲の波がやばい。

一日中部屋にこもって、よく我慢できたなと思います。えらい。

 

明日は出会い系で知り合った人と会ってくるのでいい報告ができたら、と思います。

塾講師バイト トラブルシューティング

世間一般には、多分ホワイトの部類に入るバイトである塾講師。

 

だけど

 

そんなバイトだってトラブルはつきものです!!!(体験談)

 

ということで他の人の助けになれればと思い、

実際に自分が経験したトラブルとその時行った対策について話していきます。

 

(そんな綺麗事は書かないので、苦手な人はこの先見ないことを推奨します)

 

 

 

先生!この問題わからないです!(自分もわからない)

 

まぁ、よく来がちなやつです。

生徒よ。勘違いするんじゃない。先生は多分君たちよりもバカなんだぞ。

 

 

と言えるわけもないのでそんな時は

「あ、その問題ね!

色々解法あるんだけど、一応復習しやすいように答えと同じやり方で説明するから答え見せてくれる??」

と言って答えを見てしまいましょう

 

答えがなかったら、

「ごめん!ちょっと時間かかるから、解いたら教えるね!」

で素直に解きましょう。

あーだこーだ言い訳してると、生徒の信頼が落ちてめんどいです。

 

 

本当に無理そうだったら

「あ、その分野担当じゃないから〇〇先生(賢そうな人)に聞いた方がいいと思うよ!」

って言って逃げましょう。その後、その生徒から離れて他の先生が解決してくれるのを待ちます。

あとは野となれ山となれ。

 

 

その後は、贖罪も込めて、そんなことが二度と起きないようにその分野をあとで、確認しとくぐらいはしときましょう。

 

 

君、遠いところでも大丈夫だよね?

 

魔法の言葉。

「今、人足りないんだけど、君って遠いところでも勤務できる??」

すぐに断りましょう。

100害あって1利なしです。

交通時間は時給に入りません。無駄です。

頼まれても、断固拒否しましょう。

 

 授業の予習するの忘れてた・・・

 

こんなんしでかして他の人にでも見つかったら、マジでやばいのですが、人間だからやってしまうこともありますよね。

 

こんな時に下手に講義形式の授業にしてしまうと、かなりきついです。

そんな時には、最初を問題演習にして、自由に動ける時間を作るのが鍵です。

 

その間に授業の予習(と、その問題の解説の準備)を済ましてしまいましょう。

 

 

テスト前だからと言って、塾講師はお休み取れないよ?

 

集団授業だとありがちではないでしょうか。

固定で入っているやつほど、休めないものです。

 

ていうか本当は固定で入ってるんだし、休んじゃいけない気がします。

 

ですが!

それでテストで悪い点をとって、落単となったら元も子もない。

 

前々から勉強しようにも、いつもは忙しいから無理っていう時もあると思います。

 

そんな時にはテスト前と正直に言わずに

「すいません・・・。大学の講義が急に入ってしまって・・・」

 

など、緊急で外せない用事が入った感を出しておきましょう。

そうしたら、どうせテスト勉強だろとわかっていても、相手も無理には言えないはずです。

 

ですが、休むこと自体、仕事先に迷惑がかかってしまうので出来るだけ早めに連絡はしておきましょう。

 

 

希望を出したシフトと違う

 

シフトいつがいいか出したはずなのに全然違ってた・・・

 

 

ブラックな可能性大です。

 

一応、希望のシフトと違っていたことをしっかり話し、変えてもらうように頼みましょう。

まぁでも、もともとバイトの頼みを聞かないので、多分断られるかあやふやにされてしまうでしょう。

 

そうなったら、即刻やめてやりましょう。

 

交通費が出ない

 

給与明細よくよく見てみたら交通費出てないじゃん

 

出ないことをまずは、連絡しましょう。

で、出してくれるならオーケー

 

出すと言ってたのに給料に入っていない、出してくれないなら即刻やめてしまいましょう。

そういうところは、いくら言っても出してくれないし、争うだけ時間の無駄です。