Python开发的教学博客在这里

程序语言的简介:
分为高级语言:Jave C++ C# PHP Go Ruby 等
低级语言:C 汇编

低级语言必须手工来操作内存及分配,高级语言一般都通过解释器或者编译器来自动进行内存管理。

一些常用的高级语言介绍:

语言 简介
C和汇编语言 一般用来编写操作系统内核及硬件驱动
PHP 适合写页面,可以快速搭建web页面,有局限性
Java和C++ 很通用,一般用于开发大型软件,开发难度高,执行效率高
Python 开发快捷,使用面广,执行效率低

在自学的时候了解了图灵完备的语言都可以做任何事情,也就是说,上边这些语言都可以实现一样的功能,只是开发的过程有区别而已。一台通用计算机+图灵完备语言能够做到的事情,其他通用计算机也都能够做到。在计算力不断发展的今天,采用解释器的语言的执行效率相比编译运行的语言,在广义的服务上也差不了太多,只有在特殊的情况下才需要用力优化。

什么是Python,随便打开一本书都会有的啦。

Python.org的官方版本是CPython,即解释器是由C语言写成的。
常见的还有:
Jython(以Java 解释器写的python),不过我看了一下,Jython现在只有2.7版,可能还未升级到3.X版。
IronPython:用C#写的python解释器。
Pypy:用CPython写的python解释器。但是Pypy的通用性目前还没有做到和Cpython一样,尤其在各种库支持方面。如果运行简单程序,倒是可以考虑Python。
这里边最快的是Pypy,其中的技术有很多技术方面的论文。现在就不去深究了

Python究竟是什么:所有的语言,都是将字符翻译成机器码,然后交给操作系统执行的过程。编译器与解释器的区别。Python 是一个解释器,用来将编写的代码字符解释并且运行,最终获取运行结果返回(实际上python解释器可以理解为一个虚拟机环境)。编译器编译一个可以独立运行的文件,交给操作系统运行并获取结果。

Python安装之前:
安装的是Python 解释器。一般要将python放到PATH环境变量中,以保证运行的python程序都能够找到python解释器。解释器自带垃圾回收机制(垃圾回收机制的启动和运行对程序的效率影响很大,这是高阶内容)。
Python的安装:
Python的官方网站是python.org。一般是64位,推荐安装在C盘的根目录下边,然后安装过程中勾选将python的目录安装到PATH内。
Linux安装python:
一般Linux自带的python解释器是2.6或者2.7,但是系统自带的版本是一些系统服务的依赖,不能够简单直接升级,一般是另外再安装一个python3,然后可以用不同的路径和命令区分python3的执行。

Python的目录结构里:/srcipts/下边有几个可执行文件包含pip等文件,然后在安装目录下有python.exe和pythonw.exe

Python程序的运行方式:
一般用命令行模式,给python.exe 传源代码文件作为参数即可运行.
单独运行python.exe则是进入交互式解释模式.
在正常的公司开发中,一般都是采取前者方式.在linux方式也只能采取前者。
windows下配置PATH变量,可以从计算机管理高级中进去。


开始编写Python程序

第一个程序:

print("hello,world")

Hello world的来历
注意,python在单独执行程序的时候,对程序文件的后缀名没有要求,但以后在import导入模块的时候,还是需要用.py来命名.

Python的文件头:
#!/usr/bin/env python —->linux的执行可以用./的方式来执行程序,比如./2.py 所以程序的最前边是必须要指定解释器的位置.
这一条在windows下不起作用.
# -*- coding:utf8 -*- —->这个是用于2.7的时候指定编码为UTF-8,在现在的python3里,已经不需要了,因为python3已经默认就是UTF-8.
复习一下Unicode 和UTF-8.

input(“提示内容”) 获取用户输入的值,是以字符串的形式.将这个字符串赋给一个变量,就可以拿到用户输入.

变量:指代一块内存地址的标签,计算机物理原理学过以后,对变量会有更好的理解.变量的赋值可以理解为将这个名字贴到一块内存地址上,那块地址上存放的就是赋给变量的值.
变量的名字就是标识符,和用于函数 ,类等的一样,只能由字母,数字和下划线组成,而且不能以数字开头.以下划线开头的变量名,最好不要随意使用.所有的标识符都不能用python的关键字.
python内置的名称,可以用自定义的变量名覆盖,但这样会让原来的内置函数失去功能.
显示关键字的程序:

import keyword
print(keyword.kwlist) 

条件语句:
分支与循环if elif else for while.
这些基本上都熟悉了.不需要执行的分支,可以用pass略过.

基本数据类型:
字符串,字符串每一个组成部分是字符,但是python里没有字符变量,不像C语言的char.python里单个字符也是字符串.字符串可以使用单引号,双引号,三单引号和三双引号,单引号里可以使用双引号,双引号里可以使用单引号,三引号里可是使用单引号和双引号.不想转义,除了用\\以外,还可以在字符串前加r.
数值:
整型 浮点 虚数,都以及知道了.

然后是条件分支和循环语句,也比较清楚了
始终记得python的代码块开始的地方一定有一个冒号

练习都是很老套的了

#求1-100所有数的和
total = 0
i = 1

while i < 101:
    total += i
    i += 1

print(total)
#输出1-100内的所有奇数
for i in range(1, 101):
    if i % 2 == 1:
        print(i)
#输出1-100内的所有偶数
for i in range(1, 101):
    if i % 2 == 0:
        print(i)
#求1-2+3-4+5...99的结果
#可以看到,偶数减去,奇数加上,到99结束
total = 0
for i in range(1, 100):
    if i % 2 == 1:
        total += i
    else:
        total -= i
print(total)
#用户登录,三次机会
count = 0

while count < 3:
    a = input("Name:")
    b = input("Password:")
    if a == 'root' and b == '123':
        print("Logged in ")
        break
    else:
        print('Wrong name or password')
        count += 1
print("Log forbidden")

顺便还有配置autopep8的教程:
Pycharm中使用autopep8作为扩展工具
** 1.安装autopep8 **

pip install autopep8
** 2.Pycharm进行设置 **

Settings–>Tools–>External Tools 点击添加按钮Name:autopep8(可以自定义)

Tools settings:

Programs:这里实际上要找到python 下安装autopep8的地址,如果没有把autopep8的地址加入到path里,那么需要手工去选autopep8的位置
Parameters:--in-place --aggressive --aggressive $FilePath$
Working directory:$ProjectFileDir$
点击Output Files

点击添加,名称可以任意填写
Regular expression to match output:$FILE_PATH$:$LINE$:$COLUMN$:.*