もしあれば、QQグループの連絡先を追加してください、呉のブログへようこそ:1055524279
最初の章では、Pythonのインストールを概説します
1.1プログラミングおよびプログラミング言語
Pythonはプログラミング言語であり、スタート学習のpythonとして、あなたは徹底的に事前に理解しておく必要がありますプログラミングの目的は何ですか?プログラミング言語は何ですか?プログラミングとは何ですか?
プログラミングの目的:
コンピュータの発明、交換する/人間解放のマシンをし、プログラミングの目的は、人間の思考プロセスが自動的に人間の脳/コンピュータのようにコンピュータを聞かせできるようにするように、コンピュータにコンピュータが認識し、いくつかの表現に応じて転送することができ吸い込ま実行の効果。
プログラミング言語は何ですか?
発現は、上記コンピュータ・プログラミング言語によって認識される、すなわち、言語通信媒体、およびプログラマ媒体と通信するコンピュータプログラミング言語することができます。プログラミングの世界では、コンピュータが人間の目的にスレーブが仕事に奴隷を指揮するようにプログラムの詳細のようなものです。
プログラミングとは何ですか?
自分の考えを書き留めるために、プログラマのニーズに基づいているプログラミングは、プログラミング言語スタイルの構文に合わせて流れ、結果は文字の束を含む出力ファイルです。
彼は強調した:通常のファイルと違い、プログラムを実行する前にするだけでなく、実行時に、文書に書かれた文字は、特定の文法的な意味を持っています
Pythonは言語を習得し、ルーチンが同じで、英語を学ぶために、たとえば、あなたが単語や文法学校を学ぶ必要があり、最終的に書き込み、言語です。
英語の言語のPython
英語の単語----------> Pythonのキーワード
英語の文法----------> Pythonの構文
Pythonで書かれた----------英語>プログラムを書きます
1.2 Pythonプログラミング言語の紹介と分類
Pythonはハイレベル、オブジェクト指向、解釈スクリプト言語です。
Pythonの起源
Pythonの作者、グイド・ヴァンロッサム(グイド・ヴァンロッサム)、オランダ語。1982年、グイドは、アムステルダム大学から数学とコンピュータで修士号を取得しました。しかし、数学者であることに彼の主張にもかかわらず、彼はコンピュータに多くの楽しみをもたらしました。彼の言葉では、二重の数学とコンピュータの資格にもかかわらず、彼はいつも、コンピュータ関連の仕事をする傾向があり、そして何とプログラミング関連の仕事をすることを熱望します。その際、グイドは接触して[fɔ:træn] [pæskəl]パスカル、C、Fortranのように使用され、他の言語。彼らのデザイン言語のための基本原則は、マシンを高速に実行できるようにすることです。1980年代には、もののIBMとAppleは、パソコンの波をオフに設定しているが、PCの構成が非常に低いです。そのような初期のマッキントッシュ(Macintosh)を、CPUクロック8MHzの速度とRAMの唯一128キロバイトとして、大きなメモリアレイを充填することができます。すべてのコアコンパイラの最適化は、プログラムの実行を許可するために行われます。効率を向上させるために、言語は、マシンの好みに合わせて複数のプログラムを書くことができるようにするためにコンピュータプログラマーのように考えることを余儀なくされました。当時、プログラマは手でコンピュータのあらゆるインチを圧迫する能力を待つことができません。一部の人々も、ポインタC言語はメモリの無駄だと思います。ダイナミックタイプ、自動メモリ管理、オブジェクト指向については......それを忘れて、それはあなたのコンピュータ停止を行います。
プログラミングのこのスタイルは、グイドが悩んことができます。グイドは、C言語で関数を作成する方法を知っているが、書き込みのプロセス全体は、彼がすでに実装する方法を正確に知っているにもかかわらず、多くの時間を要します。彼の他のオプションは、シェルにあります。Bourneシェル(スイッチングコマンドインタプリタ UNIXシステムとして、コマンドプログラミング言語)、インタプリタは、長い時間となっています。UNIX管理者は、多くの場合、このようなように、定期的なバックアップ、ファイルシステム管理、およびなどの一部のシステム保守作業を、作るためにいくつかの簡単なシェルスクリプトを記述するために使用されています。シェルは、UNIXの下で機能の多くとの接続、接着剤のようにすることができます。C言語プログラムの行数百は、シェルでわずか数行を完成させることができます。しかし、本質は、コマンドシェルを呼び出すことです。それは本当の言語ではありません。例えば、シェルはない数値データ型ではない、複素加算器です。要するに、シェルは完全に機能するコンピュータを動員することはできません。
HOW TOは、関数を定義するために使用されます。Pythonプログラマは、このプログラムを理解しやすいはずです。ABC言語はブロックを示すために、コロンとインデントを使用します。行の最後にはセミコロンはありません。建設のための無括弧であれば()。割り当ては、PUTはなく、等号のより一般的なを使用しています。これらの変更は、ABCプログラムは、テキストの一部のように読み込むことができます。すでに使用の優れた読みやすさと使いやすさを持っているにもかかわらず、ABC最終的言語はに引っ掛かっていません。当時、ABC言語コンパイラを実行するには、比較的知名度の高いコンピュータが必要です。これらは、プログラムではなく、その学習曲線の効率化に、より配慮し、通常はコンピュータに精通したコンピュータのユーザーです。貧しいスケーラビリティ:ハードウェア、ABCのデザイン言語の難しさに加えて、いくつかの致命的な問題があります。ABC言語はモジュラー言語ではありません。あなたは、このようなグラフィックのためのサポートとして、ABC言語などの機能を追加したい場合は、多くの場所を変更する必要があります。ない直接IO。ABC言語は、直接ファイルシステムを操作することはできません。あなたは、このようなテキストとして、介してデータストリームをインポートすることができますが、ABCは、直接読み取りと書き込みのファイルができませんでしたが。コンピュータ入力と出力言語の困難は致命的です。あなたはそれを開く車のドアを想像できますか?過度の革新。例えば、上HOW TOプログラムとして、プログラムの意味を表現するために、自然言語を介してABC。プログラマのために、しかし、彼らはより多くの機能を定義したり、関数を定義するために慣れています。同様に、プログラマはより多くの割り当て変数に等号を使用することに慣れています。ABC言語は非常に特別な、だけでなく、学ぶことは非常に困難ですが。困難の普及。ABCコンパイラ素晴らしい、テープに格納する必要があります。グイドは訪問の時に、他の人にコンパイラをインストールするには、大規模なテープABCがなければなりませんでした。このように、ABCの言語はすぐに広がりに困難です。1989年には、クリスマス休暇を渡すために、グイドは、Python言語のコンパイラを書き始めました。名前のPython、空飛ぶモンティ・パイソン(フライングサーカス)からグイド最愛のテレビシリーズ。Cシェルとフル機能を備えた、使いやすい、スケーラブルな言語、間を作成するには:彼はこの新しい言語が彼の理想を満たすことができ、パイソンと呼ばれることを期待しました。言語設計の愛好家としてグイド、試みの言語がありました。今回は、それは純粋にハッキング(輸送)行動でした。
言語の誕生
1991年に、最初のPythonコンパイラを生まれ。これは、C言語で書かれており、C言語のライブラリを呼び出すことができます。誕生から、Pythonはすでに持っている:クラス、関数、例外処理、コアデータ型、テーブルや辞書などの、だけでなく、拡張モジュールベースのシステムを。多くのCからPythonの構文が、強くABC言語の影響を受けて。こうした必須インデントなど、今日まだ物議までABC言語からいくつかの規定、。しかし、これらの規定は、Pythonの構文が読みやすいことができます。規則の数、そのような等号割り当てのリターンとして、C言語、特に条約一方、Pythonの賢い選択対象。グイドは「常識」の設立は、オーバーもつれする必要がない場合はどう、と思いました。最初からPythonは特に拡張性を懸念します。Pythonは複数のレベルで拡張することができます。トップからは、導入することができます。Pyはファイルを直接。下部には、あなたはC言語のライブラリを参照することができます。Pythonプログラマはすばやく拡張モジュールとして。Pyのファイルを書き込むためにはPythonを使用することができます。しかし、パフォーマンスは考慮すべき重要な要因である、Pythonプログラマは、Pythonの使用への導入のための.soファイルをコンパイルしたCプログラムを書く、ボンネットの下に見ることができます。Pythonは所定の最初の大きな枠として、鋼ハウジングを使用してのようなものです。プログラマが拡張または、この枠組みの中で変更することが比較的自由にすることができます。完全グイド自身が開発したオリジナルのPython。Pythonのは、グイドの同僚に歓迎されました。彼らはすぐにフィードバック意見を使用するとPythonの改善に参加しています。グイドと私の同僚のいくつかは、Pythonは、チームの中核を構成しています。彼らは、ハックのための空き時間(巧妙に編集した)のPythonのほとんどを所有しています。その後、Pythonは研究所を超えて展開します。Pythonは、コンパイラのプロセス、論理的思考とハイライトプログラミングレベルに、マシンレベルで隠された多くの詳細になります。Pythonプログラマではなく、特定の実装の詳細よりも、論理的な思考プロセスのために多くの時間を過ごすことができます。この機能は、プログラマーの膨大な数を集めました。Pythonは人気となりました。
人生は短いですが、私は、Pythonを使用します
ヒーロー、我々は急速に変化するコンピュータ業界を見てみましょう代わりに、私たちのPythonの時間を中断しなければなりませんでした。1990年代初頭には、パーソナルコンピュータが一般家庭に入るようになりました。
啓示
Pythonは美しく、明確かつシンプルな提唱、優秀で、広く使われている言語です。PythonはTIOBEは、それがGoogleのサード最大の開発言語、言語のDropboxの基礎、クレソンサーバーの言語であるランキングで4位。パイソンの歴史は、それは私に多くのインスピレーションを与える、の代表として使用することができます。Pythonは、開発プロセスでは、コミュニティは重要な役割を果たしました。グイドは、彼はすべてのプログラマーではないと考えているので、彼はフレームワークの開発のための唯一の責任です。問題が複雑すぎる場合は、彼は周りに行くことを選ぶだろう、つまり、角(カット角を)カット。これらの問題は、最終的にはコミュニティの他の誰かによって解決します。コミュニティの才能は非常に豊富であり、さらには昇給の資金にウェブサイトを作成し、少し遠くにこの事を開発し、また、対処して喜んでいました。今日のプロジェクトは、プロジェクトの最終的な成功への鍵になるために、より複雑で大規模な、協力とオープンマインドを開発します。他の言語からのPythonはそれがABCの歴史に入っている、またはCとPerlが使用中である、そして他の多くの言語が表示されていないかどうか、多くのことを学びました。Pythonの成功は、そのすべての言語を学ぶの成功を表し、言うことができます。同様に、Rubyはその成功もパイソンの特定の態様の成功を表し、パイソンから借りました。各言語は、それが優れた場所があり、ハイブリッドであるが、種々の欠陥があります。一方、裁判官「善と悪」しばしば外部要因プラットフォームの対象となる言語では、ハードウェア、年齢など。プログラマは、紛争の多くの言語を経験しました。プログラマはグイドのように独自の言語を混在させることができますので、実際には、オープンマインドで、各言語、多分1日を確定します。
常識のキーポイント
パイソン/paɪθən/発音とスペル
著者からのテレビシリーズのようなPythonのPythonの平均値、
Pythonは、著者グイド・ヴァンロッサム(グイド・ヴァンロッサム)であります
Pythonは、空のクリスマスを埋めるために、クリスマス1989年の間に亀のトンで、Cプログラミング言語で書かれました
Pythonのは、1991年に誕生しました
Pythonインタプリタが今より多くの言語を持って、私たちはしばしばCPythonの(C言語の正式版)されている、他のJythonは(Javaはプラットフォーム上で実行することができます)があります
オブジェクト指向プロセス指向に対応し、アイデアはプログラマの見通し、開発プロセスの開発者であります
コンパイル言語への説明に相当します。
説明言語:プログラムを実行している場合のみ翻訳は、そのような基本的な解釈言語として、特別な存在であるインタプリタ各文が唯一の翻訳を実行したときに、直接、基本的なプログラムを実行することができます。毎回、効率が比較的低くなると、このようなインタプリタ言語の翻訳が実行されます。
コンパイルされた言語:
前に、プログラムの実行にコンパイル言語、別のコンパイルプロセスがあり、プログラムは機械語、このプログラムの実行後の時間に変換されます、あなたが翻訳する必要はありません。
言語をスクリプト:インタプリタ言語、例えば、ジャバスクリプトなどがあり、それはC \ C ++好きではないと実行ファイルの形で、バイナリコードにコンパイルすることができるように。
、スクリプト言語は、コンパイルする必要が直接解釈することによって使用することができ通訳を担当します。スクリプト言語が不可欠のようなテキストの形で一般的に存在しています。
分割方法。
コンパイル1.(コンパイラ、Googleによる同等の翻訳を必要とします。バイナリファイルにコンパイルすべての時間。)
Cなど、実行速度、
(1)の利点:高速実行
(2)短所:開発とデバッグトラブルの低い効率は、クロスプラットフォームであることはできません。
2.インタプリタ(同時通訳に対応する通訳の必要性、;行ずつ実行し、プログラムを実行するとき)
Pythonなど、遅い実行速度、簡単なデバッグ
(1)利点:高い効率、クロスプラットフォームの開発。
(2)短所:遅い実行しています。
拡張:
機械語:
利点は、最低、最速の実行であります
欠点は、最も複雑かつ最も効率的な開発であります
アセンブリ:
比較の利点は、下の、最速の実行
欠点は、最小効率の開発複雑です
高レベルの言語:
コンパイル言語の実行速度ではなく、ロケールに依存する操作、クロスプラットフォームの貧しいです
どこでも良いクロスプラットフォーム、コードを解釈し、欠点は、実行の低速で走行するインタプリタを依存
トップ言語リンク:(https://www.tiobe.com/tiobe-index/)
Pythonの1.3は現在、メインの応用分野であります:
1. WEB开发——最火的Python web框架Django, 支持异步高并发的Tornado框架,短小精悍的flask,bottle, Django官方的标语把Django定义为the framework for perfectionist with deadlines(大意是一个为完全主义者开发的高效率web框架)
2.网络编程——支持高并发的Twisted网络框架, py3引入的asyncio使异步编程变的非常简单
3.爬虫——爬虫领域,Python几乎是霸主地位,Scrapy\Request\BeautifuSoap\urllib等.
4. 云计算——目前最火最知名的云计算框架就是OpenStack,Python现在的火,很大一部分就是因为云计算
5. 人工智能——谁会成为AI 和大数据时代的第一开发语言?这本已是一个不需要争论的问题。如果说三年前,Matlab、Scala、R、Java 和 Python还各有机会,局面尚且不清楚,那么三年之后,趋势已经非常明确了,特别是前两天 Facebook 开源了 PyTorch 之后,Python 作为 AI 时代头牌语言的位置基本确立,未来的悬念仅仅是谁能坐稳第二把交椅。
6. 自动化运维——问问中国的每个运维人员,运维人员必须会的语言是什么?10个人相信会给你一个相同的答案,它的名字叫Python
7. 金融分析——金融行业,10年的时候 分析程序、高频交易软件就是用的Python,到目前,Python是金融分析、量化交易领域里用的最多的语言
8. 科学运算—— 你知道么,97年开始,NASA就在大量使用Python在进行各种复杂的科学运算,随着NumPy, SciPy, Matplotlib, Enthought librarys等众多程序库的开发,使的Python越来越适合于做科学计算、绘制高质量的2D和3D图像。和科学计算领域最流行的商业软件Matlab相比,Python是一门通用的程序设计语言,比Matlab所采用的脚本语言的应用范围更广泛
9. 游戏开发——在网络游戏开发中Python也有很多应用。相比Lua or C++,Python 比 Lua 有更高阶的抽象能力,可以用更少的代码描述游戏业务逻辑,与 Lua 相比,Python 更适合作为一种 Host 语言,即程序的入口点是在 Python 那一端会比较好,然后用 C/C++ 在非常必要的时候写一些扩展。Python 非常适合编写 1 万行以上的项目,而且能够很好地把网游项目的规模控制在 10 万行代码以内。另外据我所知,知名的游戏<文明> 就是用Python写的
Python在一些公司的应用:
谷歌:Google App Engine 、code.google.com 、Google earth 、谷歌爬虫、Google广告等项目都在大量使用Python开发
CIA: 美国中情局网站就是用Python开发的
NASA: 美国航天局(NASA)大量使用Python进行数据分析和运算
YouTube:世界上最大的视频网站YouTube就是用Python开发的
Dropbox:美国最大的在线云存储网站,全部用Python实现,每天网站处理10亿个文件的上传和下载
Instagram:美国最大的图片分享社交网站,每天超过3千万张照片被分享,全部用python开发
Facebook:大量的基础库均通过Python实现的
Redhat: 世界上最流行的Linux发行版本中的yum包管理工具就是用python开发的
豆瓣: 公司几乎所有的业务均是通过Python开发的
知乎: 国内最大的问答社区,通过Python开发(国外Quora)
春雨医生:国内知名的在线医疗网站是用Python开发的
除上面之外,还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝 、土豆、新浪、果壳等公司都在使用Python完成各种各样的任务。
1.4 Python优缺点
优点
简单————Python是一种代表简单主义思想的语言。阅读一个良好的Python程序就感觉像是在 读英语一样,Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。
易学————就如同你即将看到的一样,Python极其容易上手。前面已经提到了,Python有极其简单的语法。
免费、开源————Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、对它做改动、把它的一部分用于新的自由软件中。FLOSS是基于一个团体分享知识的概念。这是为什么Python如此优秀的原因之一——它是由一群希望看到一个更加优秀的Python的人创造并经常改进着的。
高层语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节。
可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC、Symbian以及Google基于linux开发的Android平台!
解释性————这一点需要一些解释。一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的Python程序更加易于移植。
面向对象————Python既支持面向过程的编程也支持面向对象的编程。在“面向过程”的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在“面向对象”的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。
可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
丰富的库————Python标准库确实很庞大。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted(是用Python实现的基于事件驱动的网络引擎框架)和Python图像库等等。规范的代码————Python采用强制缩进的方式使得代码具有极佳的可读性。
缺点
运行速度,有速度要求的话,用C++改写关键部分吧。
线程不能利用多CPU问题,这是Python被人诟病最多的一个缺点
Python3的安装
1.3.1 python3安装
直接到官网https://www.python.org/下载,安装就可以了。
2.安装比较简单,点exe文件一直下一步就可以了(注意:安装的时候有个选择是否添加环境变量,这个选是,之后就不用添加环境变量了)如果没有,请添加环境变量。 计算机属性 ---->高级系统设置---->环境变量--->系统变量里的path---->编辑添加安装python的路径(例如E:\python;E:\python\script)
修改python3安装目录下的python.exe文件重命名为python3.exe。(这样命令窗口运行python3输入python3,运行 python3)
注意:我们选择为64位安装包
第一步:
第二步:
第三步:
安装完成
1.4 python安装目录介绍
1.4.1 安装目录介绍
目录组织方式
关于如何组织一个较好的Python工程目录结构,已经有一些得到了共识的目录结构。
假设你的项目名为foo, 我比较建议的最方便快捷目录结构这样就足够了:
Foo/
|-- bin/
| |-- foo
|
|-- foo/
| |-- tests/
| | |-- __init__.py
| | |-- test_main.py
| |
| |-- __init__.py
| |-- main.py
|
|-- docs/
| |-- conf.py
| |-- abc.rst
|
|-- setup.py
|-- requirements.txt
|-- README
简要解释一下:
bin/: 存放项目的一些可执行文件,当然你可以起名script/之类的也行。
foo/: 存放项目的所有源代码。(1) 源代码中的所有模块、包都应该放在此目录。不要置于顶层 目录。(2) 其子目录tests/存放单元测试代码; (3) 程序的入口最好命名为main.py。
docs/: 存放一些文档。
setup.py: 安装、部署、打包的脚本。
requirements.txt: 存放软件依赖的外部Python包列表。
README: 项目说明文件。
Tools目录:Python 提供的一些工具
wiki/ 如果有wiki,可以创建此目录
scripts/ 项目用到的各种脚本
tests/ 测试代码
lib/ 库文件,放自定义模块和包
etc 是Linux下的配置文件的老家, 很多管理和使用的修改都在这里
Share 是Python共享目录
Include是Python包含、共享目录
Tcl 桌面编程包
python目录 lib 和libs有什么区别
两者还是有区别的,放在lib中的是被reference(引用)的,放在libs中的是被include的。放在libs中的文件会自动被Eclipse(下载)所include(包含)。所以不要把API(应用程序接)放到libs里去。比如ndk生成的so,是在libs中的,这时候你就需要把它拷贝到lib中,而不是libs中,否则你ref
1.5 python环境变量配置
1.5.1 配置环境变量:https://jingyan.baidu.com/article/ceb9fb10db2fc68cac2ba04e.html
测试安装是否成功
windows --> 运行 --> 输入cmd ,然后回车,弹出cmd程序,输入python,如果能进入交互环境 ,代表安装成功。
1.7 Python脚本运行
1.7.1 安装完成,打开命令窗口:输入python3
打印Python的第一个程序hello world (在 Windows命令提示符(cmd)中输入以下命令进行 pip的更新:python -m pip install -U pip)
1.6 Python解释器
当我们编写Python代码时,我们得到的是一个包含Python代码的以.py为扩展名的文本文件。要运行代码,就需要Python解释器去执行.py文件。
由于整个Python语言从规范到解释器都是开源的,所以理论上,只要水平够高,任何人都可以编写Python解释器来执行Python代码(当然难度很大)。事实上,确实存在多种Python解释器。
CPython
当我们从Python官方网站下载并安装好Python 3.x后,我们就直接获得了一个官方版本的解释器:CPython。这个解释器是用C语言开发的,所以叫CPython。在命令行下运行python就是启动CPython解释器。
IPython
IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。
Jython
Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
小结
Python的解释器很多,但使用最广泛的还是CPython。
1.8 标识符命名规则和关键字:
什么是标识符,看下图:
3.2. 标识符的组成
<1>标示符
什么是标示符,看下图:
挖掘机技术哪家强,中国山东找蓝翔
开发人员在程序中自定义的一些符号和名称
标示符是自己定义的,如变量名 、函数名等
<2>标示符的规则
标示符由字母、下划线和数字组成,且数字不能开头
思考:下面的标示符哪些是正确的,哪些不正确为什么
fromNo12
from#12
my_Boolean
my-Boolean
Obj2
2ndObj
myInt
test1
Mike2jack
My_tExt
_test
test!32
int
jack_rose
jack&rose
GUI
G.U.I
python中的标识符是区分大小写的
标识符由字母、下划线和数字组成,且数字不能开头
注意: 标识符是区分大小写的
3.3.1 见名知意
起一个有意义的名字,尽量做到看一眼就知道是什么意思(提高代码可 读性) 比如: 名字 就定义为 name , 定义学生 用 student
3.3.2 驼峰命名法
小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog
大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName
不过在程序员中还有一种命名法比较流行,就是用下划线“_”来连接所有的单词,比如send_buf,last_name
Python推荐就是用下划线“_”来连接所有的单词
3.4. 关键字
什么是关键字
Python一些具有特殊功能的标识符,这就是所谓的关键字.
关键字,是Python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符。
可以通过以下命令进行查看当前系统中Ppython的关键字
import keyword
keyword.kwlist
1.9 注释:
1.9.1 注释的分类:
1.2.1. 单行注释和多行注释
以#开头,#右边的所有东西当做说明,而不是真正要执行的程序,起辅助说明作用
#那单引号、双引号、多引号有什么区别呢? 单双引号和双引号木有任何区别,只有下面这种情况 你需要考虑单双的配合
msg = "My name is wusir , I'do you love me ' 18 years old!"
print(msg)
#多引号什么作用呢?作用就是多行字符串必须用多引号
msg = '''
今天我想写首小诗,
歌颂我的同桌,
你看他那乌黑的短发,
好像一只炸毛鸡。
'''
print(msg)
变量:
什么是变量
变量即变化的量,核心是“变”与“量”二字,变即变化,量即衡量状态。
为什么要有变量?
程序执行的本质就是一系列状态的变化,变是程序执行的直接体现,所以我们需要有一种机制能够反映或者说是保存下来程序执行时状态以及状态的变化。
比如: 英雄的等级为1,打怪升级(变)为10
僵尸的存活状态True,被植物打死了,于是变为False
人的名字为test,也可以修改为Test
变量就是用来存东西的
在程序中,有时我们需要对2个数据进行求和,那么该怎样做呢?
大家类比一下现实生活中,比如去超市买东西,往往咱们需要一个菜篮子,用来进行存储物品,等到所有的物品都购买完成后,在收银台进行结账即可
如果在程序中,需要把2个数据,或者多个数据进行求和的话,那么就需要把这些数据先存储起来,然后把它们累加起来即可
在Python中,存储一个数据,需要一个叫做变量的东西,如下示例:
num1 = 100 #num1就是一个变量
num2 = 87 #num2也是一个变量
result = num1 + num2 #把num1和num2这两个变量的数据进行累加,然后放到 result变量中
print(result)
说明:
所谓变量,可以理解为菜篮子,如果需要存储多个数据,最简单的方式是有多个变量,当然了也可以使用一个
程序就是用来处理数据的,而变量就是用来存储数据的
程序中:
为了更充分的利用内存空间以及更有效率的管理内存,变量是有不同的类型的,如下所示:
怎样知道一个变量的类型呢?
在python中,只要定义了一个变量,而且它有数据,那么它的类型就已经确定了,不需要咱们开发者主动的去说明它的类型,系统会自动辨别
可以使用type(变量的名字),来查看变量的类型
与用户交互:
咱们在银行ATM机器前取钱时,肯定需要输入密码,对不?
那么怎样才能让程序知道咱们刚刚输入的是什么呢?
大家应该知道了,如果要完成ATM机取钱这件事情,需要先从键盘中输入一个数据,然后用一个变量来保存,是不是很好理解啊
3输出函数
3.1.1. 生活中的“输出”
5.1.2. 软件中的“输出”
5.1.3. Python中的输出
# 打印提示
print('hello world')
print('我在北京等你')
5.2 格式化输出
5.2.1 格式化操作的目的
程序中经常会有这样场景:要求用户输入信息,然后打印成固定的格式
比如要求用户输入用户名和年龄,然后打印如下格式:
My name is xxx,my age is xxx.
很明显,用逗号进行字符串拼接,只能把用户输入的名字和年龄放到末尾,无法放到指定的xxx位置,而且数字也必须经过str(数字)的转换才能与字符串进行拼接。
# name = input("name>>>:")
# age = input("age>>:")
# print("my name is %s my age is %s " %(name,age))
# print("my name is %s" %'test')
# print("my age is %s" %'22')
# %s 可以接收数字类型也可以接收字符串类型
print("my age is %s" % 222)
#%d 只能接收数字类型
print("my age is %d" %'455') #%d 只能接收数字类型
这就用到了占位符,如:%s、%d
%s字符串占位符:可以接收字符串,也可接收数字
print("my name is %s,my age is %s"%("test",11))
%d数字占位符:只能接收数字print('My name is %s,my age is %d' %('test',18))
#注意:
#print('My name is %s,my age is %d' %(name,age)) #age为字符串类型,无法传给%d,所以会报错
想一想:
在输出年龄的时候,用了多次"我今年xx岁",能否简化一下程序呢???
答:
字符串格式化
5.2.2 什么是格式化
在程序中,看到了%这样的操作符,这就是Python中格式化输出。
age = 28
name = "python"
print("我的姓名是%s,年龄是%d"%(name,age))
课堂练习:
#接收用户输入,打印成指定格式
name=input('your name: ')
age=input('your age: ')
print('your name is %s,my age is %s' %(name,age))
扩展:
end关键字关键字end可以用于将结果输出到同一行
print("你叫什么名字?")
print("你好,我是wusir\n")
print("你叫什么名字?",end="")
print("你好,我是wusir",end="")
print("\tPython")#\t表示空四个字符,也称缩进,相当于按一下Tab键print("\nPython\nJAVA\nC++\nJavaScript\nC#")#\n表示换行,
相当于按一下回车print("languages:\n\tPython\n\tJAVA\n\tC++\n\tJavaScript\n\tC#")#\n\t表示换行加每行空四格
5.3 换行输出
在输出的时候,如果有\n那么,此时\n后的内容会在另外一行显示
输出多个变量内容