投稿

11月, 2017の投稿を表示しています

PythonnでGUI作成

イメージ
久々の投稿です。 久々過ぎますね・・・ しばらくVBAを使いエクセル操作を自動化してました。 複雑なものは組めませんが、基礎的なことはネット情報や書籍を見ながらできるようになってきました。 Pythonでエクセルを操作できるライブラリ「openpyxl」がある事を知り簡単なPGを作ってみたところ 動くではありませんか! openpyxl.xlskというエクセルファイルのセルに入力後保存するという簡単なもの ////////////////////////////////////////////////////////////////////////////////// import openpyxl as px wb = px.load_workbook("openpyxltest.xlsx") ws = wb["Sheet"] ws.cell(1,1).value ="int" ws.cell(1,2).value =1234 ws.cell(1,3).value ="str" ws.cell(1,4).value ="1234" ws.cell(2,2).value = 4567 ws.cell(2,4).value ="4567" for i in range(1,11): ws.cell(3,i).value = i ws.cell(i+3,1).value = "TEST" + str(i) wb.save("openpyxltest.xlsx") ////////////////////////////////////////////////////////////////////////////////// しかし、作ったPGは他の人も使うので、GUIにできないかと調べておりました。 標準ライブラリの「tkinter」を使えばできるのですが、素人にはとっつきにくく 理解し難いものでした。(いずれ勉強して覚えたいと思いますが。。。) 他に何かライブラリはないかとインターネットで検索していると「PySimplGUI」という ライブラリを見つけ

【課題】C# 繰り返し処理(for文)

【課題】難易度1 コンソールから正数値を入力させた後、forループを用いて、その数だけ■マークを表示するプログラムを作りなさい。 【私の答え】 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace ConsoleApp1 {     class Program     {         static void Main(string[] args)         {             Console.Write("数:");             int a = int.Parse(Console.ReadLine());                          for (int i=1; i <= a; i++)              {                 Console.Write("■");             }             Console.WriteLine();  //改行 ------- この課題に30分かかってようやく解けました。。。 すごい単純な事に悩んでました。 for文の条件定義を(int i=1; i==a; i++)としておりコマンドプロンプトで数値入力直後にプログラムが終了するという結果になりました。 for文に誤りがあるのだろうと思い。以下のコードを修正しました。 数字の動きを確認しました。 for (int i=1; i >= a; i++)              {                 Console.WriteLine("a=" + a);                       →当然このブロックはパスされているので実行しません。                  Console.WriteLine("i="  + i );    

【備忘録】C# 関数作成構文復習

アクセス修飾子 戻り値のデータ型 関数名 (引数のデータ型 引数の変数名) { 処理の定義 (メソッド) } (例) private int zetaichi (int hikisu) {     if (hikisu<0) hikisu = hikisu * -1;     return hikisu; } <解説> 変数hikisuが0以下(負の値)であれば-1を乗法し正にしている。 つまり絶対値を求める関数「zetaichi」を作成した。 if文の結果を変数hikisuに代入し関数「zetaichi」に戻している。 hikisu=-5とした場合の動作 private int zetaichi (int 5) {     if (-5<0) 5 = -5 * -1;     return 5; } <アクセス修飾子> private 同一クラス内で使用可能 public   どこからでも使用可能 その他 アクセス修飾子参照 ☆関数やクラスのカプセル化に使う 関数もクラス基本は同じ考え方 関数=同一メソッド内のみ使用可能 クラス=C#の構造そのもの

【備忘録】C#<オブジェクト指向>を一旦整理

勉強に使用している「Visual C# 2017 パーフェクトマスター」 およそ1/3程進んだチャプター3「オブジェクト指向」もう全くもってわからず オブジェクト指向の事ばかり考えて1週間。。。 C#というよりも今のプログラミングの要なので、飛ばすわけにもいかないので必死です。 一旦ここで頭を整理したいと思います。 わからないワード(予約語)を調べる為新たに「C#ポケットリファレンス」も購入。 間違えていたらごめんなさい。指摘してくれると助かります。 オブジェクト指向で出てくるワード。 「クラス」「フィールド」「メンバー」「メソッド」「コンストラクタ」「プロパティ」 これらの関係性と使い方が理解できず苦しんでいるところです。 これらの整理する前にC#の構造を再度整理してみます。 名前空間  メイン  {    クラス A    { →ブロック開始     フィールド ・・・ 変数                   → これをメンバー     メソッド  ・・・ 機能     } →ブロック終了    クラス B     { →ブロック開始     フィールド ・・・ 変数                   → これをメンバー     メソッド  ・・・ 機能     } →ブロック終了      {           コンストラクタ A → インスタンス(実装)                             →これをオブジェクト       機能       }         {       コンストラクタ B → インスタンス(実装)       機能   } プロパティは。。。とりあえず後回し。 C#は名前空間によって階層管理されている。 windowsの場合階層(フォルダ)は「¥」によって仕切っているが、C#場合「.(ドット)」で仕切る。 (例) windowsの場合 myprogram\test\sampledate C#の場合     myprogram.test.sampeldate テレビの置き換えて考えてみた。 名前空間 〇芝 〇EGZ〇    クラス 液晶   メソッド カラー液晶 42インチ    クラス ボタン

【備忘録】Microsoft SQL Sever Management Studio 2017 <設定>

イメージ
【Microsoft SQL Sever Management Studio 2017】 <接続設定> サーバー名 SQLインスタンス確認方法 コマンドプロンプトより「sqllocaldb info」を実行 MSSQLLocalDB → これがインスタンス localDBに接続する場合 ☆Microsoft SQL Server 2015 Express LocalDB Visual Studio 2017 communityをインストール時にインストールされたもの                    サーバー名に(localdb)\MSSQLLocaDBとする。 *「()」を忘れずに、これを忘れて1時間以上格闘してました。 SQL Severに接続する場合 ☆Microsoft SQL Server 2017 expressをインストール インストール時に勝手にサーバー名が作られたようで変更の仕方は今後勉強です。 当面はLocalDBで勉強していくつもりですのでしばらくこちらは使用しませんので忘れないように備忘録です。 Serverに接続場合は構成マネージャーで状態を確認「停止」→「開始」 windows10では構成マネージャーがアプリケーションとして表示されないので注意が必要。 「スタート」右クリック「検索」より「SQLSeverManager14.msc」から起動 SQLSeverManager14→SQL Server 2017 ☆最後の14を小さくする事で古いバージョンを開く(例)SQLSeverManager13→2016 【Microsoft SQL Sever Management Studio 2016】 サブ機<設定> windows10 32bitでMicrosoft SQL Sever Management Studio 2017は64bit専用の為残念ながらインストールができないのでMicrosoft SQL Sever Management Studio 2016をインストール。 Microsoft SQL Server Manager2016構成

「Python」断念。。。

本当の基礎的な部分はなんとなく理解できてさて中級へステップしようと書店をうろつくも自分が作りたいと思う。SQLを使ったdatabase操作の書籍が見つからず。。。 ネット探すものの。。。よくわからず。 【pythonjp】というコミュニティを見つけ質問したところPythonでデータベース操作の書籍はあまり見たことないという事です・・・ 1万近く書籍をそろえたの無駄!? 最初は言語を選択するのではなくオフラインで質問できる環境の言語が一番 その次は、自分で読んでわかりやすい!!と思う書籍の言語がいいという事でした。 書店をうろうろ・・・ 最終的にはC#と思っていたのでC#はどうかな?と。。。 「visual c#」というC#をvisual studioでGUIで作れることがわかり C#にチャレンジする事にしました。 【パーフェクトマスター Visual C#2017】を購入 初期操作からdatabase操作まで一通り網羅していて図解でとても分かりやすそうです。 今度こそ!!最後まで頑張ります!!!! 構文はpythonの方がわかりやすくとっつきやすかったですが、残念です。。。

「入門 Python3」購入

Amazonで「入門 Python3」を購入 なんだろ?とても読みにくい。。。 違和感のある文章。。。 和訳か、、、 そして、一つ一つ入力して試して動きを覚えていくような感じではなく 読んで覚えていくような感じの書籍のような気がする。 ちょっと間違えたかな? でもPCのない通勤中に読めそう。 ピンとこないとたとえ話に翻弄され本題が頭に入らない。。。 やはりこの手の参考の類は実際手に取ってみないとだめですね。 ただ、Python関連の書籍が少なくAmazonでポチりました。 皆さんどうやって選んでいるのでしょうか??? とりあずいい値段したから最後まで頑張ります!!

入門書の購入

ホームページでpython入門を探してましたが、どうもイマイチ。。。 探してはちょこちょこと入力、進まない。 print ("Hello World") こればかり。。。 次のレベルをどこに行けばいいのか?さっぱり。。。 書籍を買おう!! 「pytyon スタートブック」アマゾンでポチりました。 この本は2系ですが、私のレベルでは3系も2系も大してかわらんだろう?という事で 一旦3系をPCからアンイストール、そして改めて2系をインストール もうpathの設定もわかったので、さくっと環境設定終わらせ本題へ。 例を持ち出しての説明分大変わかりやすかった!! 後半になると「クラス??」「モジュール??」がごちゃごちゃになり「メソッドってなんだっけ?」とまた 戻り、その繰り返しでこの書籍は終了。 さてさて。。。これで一体を何覚えたのやら。 私が作ろうとしているプログラムをどうやって組んで行くのか想像もつかない。 おそらく、カレーを作りたい!!という場合に例えると 関数「具材のの買い方」(野菜は八百屋、肉は肉屋)の説明が終わり メソッド「切り方」「炒め方」 ライブラリ「スーパー」に行けばなんでもあるよ。 スーパーからルー呼び出して使いましょ ルーも作れるけど面倒からそれは専門家がC言語で作ってある使ってしまおう。 これくらいなのかな? じゃあ実際カレーを作ろうと思うとこれらをミックスさせて一つの作業行程にして行けばいいのか? しかし、この本今までカレーを作る手順だったのにミックスさせる時シチューに変わってる? ただ、自分が作りたいのはカレーでもシチューでもない。。。 でもなんとなく開発環境(EDITORやIDE等)が整った段階でやった気になった。 試験勉強のときも同じ感覚でした。 机の上に参考書やノートを広げてやった気分になる。当然結果は出ませんね。。 20数年たった今も変わっていない自分って成長してない。。。 でも別の書籍を探す事にしました!!今度こそ3系行きます!!

プログラミングにチャレンジ

初めまして ノンエンジニアのアラフィフな私が、プログラミングにチャレンジします!! もちろん超初心者です。 高校の頃授業でBASICをかじったくらいです。 その後地方の名もない商業系の大学に入学し、友人に誘われシステム設計のゼミにはいる。 SE目指し就職活動するもののバブルが弾けたばかりの当時就職難でありやっと就職出来たのが物流業 そこのSEとして入社し、現場を知らないとという事で現場に回されかれこれ20年あまり。。。 修行はまだ終わらず。。。w そんな私がプログラミングするに当たりの経緯は、毎日エクセルでチマチマ売上等それに関わるデータを入力するのにかなり時間もかかり面倒。 システムへ仕様書を作りお願いするものの、時間がないと。。。 無いものは作ってしまえ!!という事です。 まずは、言語どうする? 「C」、「C++」は無理。。。というかそこまで必要ない。 windowsという事で「C#」GUIがわりと簡単らしい。 ネットで入門的なホームページ探し環境を整えました。 無料のVisual Studio Commnuty 2017をダウンロード インストールにやたら時間がかかる。。。 その間に構文を見て、なにこれ?意味わからん。。。 「Hello world」で断念。。。 もっと簡単ないのと探し初め、RubyとPythonという初心者でもわかりやすいという言語を見つけ 「Ruby=WEB」「python=分析系」という記事を見つけよしpythonだ!という事でまずはpythonを覚えます。 まずはpythonの開発環境を整えます。 pythonのホームページから3Xをインストール 2Xは2020年でサポート終了という事で覚えた頃にはサポート切れも悲しいので3Xを選択。 editorにはemeditorをインストール。 当面これで行くぞと思い。書籍片手に見本通りに入力。 まずは、わかりやすい!!お約束の「hello python」たった一行!! BASICのprint文と似ているぞ。これは行けそう。 さらにIDE(総合開発環境)にpyscripterをインストール。 visual studioでもできるらしいですが、起動にやたら時間がかかるのでやめた。 editorだけで十分なのですが、いちいちコ