20180609_开始学习Python之前的准备

一、安装Python解释器

Python是一种开源的编程语言,在学习Python编程语言之前,需要先安装Python解释器。Python解释器有很多种,最常见的是CPython。对于像我一样的编程小白而言,只需要知道在Python官网下载对应版本的Python就可以了。

具体安装过程,可参见嵩天的Python语言程序设计

目前,Python有两大版本,即2.x版本和3.x版本。从个人学习和了解来看,建议安装3.x版本。

二、安装PyCharm

下载并安装PyCharm

安装好Python后,就可以编写Python代码了。编写Python代码的工具有很多,可以直接通过Windows系统的cmd命令行编写,也可以使用Windows系统自带的记事本、Sublime Text、Notepad++、PyCharm等等编写。

其实,安装Python时,Python就自带了一个集成开发环境——IDLE。

前期刚开始学习Python,需要动手编写一些代码时,可以使用IDLE进行编程。随着学习的深入,为了方便编程,提高编程效率,可以安装PyCharm。

下载PyCharm可以去PyCharm官网

PyCharm有两种版本,一种是免费的社区办,一种是收费的专业版。下载专业版后,可以付费购买,也可以去万能的淘宝寻求解决方案。

具体安装及简单的配置方法网上有很多教程,可以在知乎或者简书搜索,这里给出一个搜索出的教程PyCharm安装及使用

PyCharm连接至GitHub

GitHub号称全球最大的同性交友网站,仅此一点就非常值得去折腾下。

GitHub 是基于 Git 的一个代码托管网站。开发者可以将代码托管在GitHub上,如果程序是开源的,那么可以免费使用GitHub,如果程序不是开源的,则需要收取一定的托管费用。在GitHub上,开发者可以浏览其它项目的代码,fork 到自己名下做修改,clone 回本地(没有访问权限的 private repo 除外)使用,也可以发起 pull request 向上游提交自己的修改。

在学习Python的过程中,可以将自己的代码托管到GitHub上进行版本管理、相互交流。如果学习Python达到一定水平,还可以将具有实用意义的程序托管到GitHub上供他人下载使用,他人也可以通过我们托管的程序了解我们的编程水平,或者帮助完善程序代码等。

要将PyCharm连接至GitHub共有三大步骤:

第一步,注册一个GitHub账号。 打开GitHub官网,注册方法非常简单,这里不再赘述。

第二步,下载、安装并设置Git。 打开Git官网下载最新版的Git。

安装过程中除了下图中由第二项改为第一项外,其他使用默认值即可。Git终端操作需要使用Linux命令行操作。该选项表示以后使用命令行操作时,只能使用Git Bash。这是Windows系统里使用Git最安全的方法,不会修改系统的变量环境。

image.png

安装好了后,在开始菜单可以看到Git Bash,单击它后可以打开一个命令行窗口。

注意自己的安装路径,后面在PyCharm里配置Git时需要用到。

image.png
image.png

在命令行中输入git version可以查看安装是否成功,如果安装成功,会显示安装的Git的版本。比如我安装的是Windows系统的2.17.1版本。

image.png

然后配置用户名邮箱SSH

在命令行中输入:

# 配置用户名
$ git config --global user.name "Your Name"
# 配置邮箱
$ git config --global user.email "email@example.com"
# 生成 ssh,输完后连敲三个回车即可
ssh-keygen -t rsa

这里配置的Your Nameemail@example.com目的是用于在Git中区别不同的开发者,这里设置的用户名和邮箱与远程库(代码托管中心,如GitHub)的登录用户名和密码没有联系。
#后面的语句表示注释,起提示作用,在配置过程中不用管。

这时候去查看系统盘用户目录下(一般在 C:\Users\你的用户名.ssh)是否有了.ssh 文件夹,进入会看到之前生成的 id_rsa以及 id_rsa.pub

接着,将Git连接至GitHub。

用记事本打开刚才生成的id_rsa.pub文件,复制里面的内容。

打开GitHub官网并登陆,单击头像后选择Settings,在 Settings 页面的SSH and GPG keys栏中添加新的SSH key。Title 可以自定义,将刚才复制的内容粘贴到key栏里。

image.png

打开Git Bash,然后输入ssh git@github.com

如果出现以下内容,表示Git连接至GitHub成功。

PTY allocation request failed on channel 0
Hi stephencode! You've successfully authenticated, but GitHub does not provide shell access.
Connection to github.com closed.
image.png

第三步,设置PyCharm并建立远程仓库。 打开PyCharm,按以下步骤单击:File-->Settings-->Version Control

首先,单击GitHub,将Auth Type改成PassWord。输入GitHub的注册名和注册密码。单击Test测试是否连接至GitHub。

image.png

然后,单击Git,输入Git的安装地址。

image.png

最后,建立远程仓库。 按以下步骤依次单击:

VCS-->Import into Version Control-->Share Project on GitHub

image.png

然后PyCharm会打开一个窗口,在这个窗口填写仓库名以及一些描述信息,单击Share,按照提示操作即可在GitHub上建立一个远程仓库并将已有程序上传至GitHub。

通过以上三大步设置好以后,如果新建文件,PyCharm会自动提示是否将文件上传至Git;如果对已有文件进行了更改,在PyCharm左侧窗口的文件列表中右键单击该文件,然后单击Git-->Add,修改好了后单击Commit File...即可将新修订的程序添加到Git仓库,然后单击Push即可将文件推送到GitHub。

image.png
image.png

如何将GitHub上的代码fork下来,现在学习还未涉及到。以后如果涉及到这方面需求,再单独撰文。

三、分析一段代码

正式开始学习Python前,曾为VNote编写过一段粗糙的CSS文件。通过边学习,边修改的方式,让我对CSS有了大概的印象。因此,在学习Python时,也是通过分析一段代码,初步了解Python语言的注释方式、程序结构等一些基本的知识。

我学习的这段代码如下:

# 温度有两种刻度方式,即华氏温度(℉)和摄氏温度(℃)。
# 要求用户输入任意一种带符号的温度值后(如23F、37C),程序能够自动将温度值转换为另一种温度值。

TempStr = input('请输入带符号的温度值(如38C):')
if TempStr[-1] in ['c','C']:
    F = 1.8*eval(TempStr[0:-1]) + 32
    print('转换后的温度值是{:.2f}F'.format(F))
elif TempStr[-1] in ['f','F']:
    C = (eval(TempStr[0:-1]) - 32) / 1.8
    print('转换后的温度值是{:.2f}C'.format(C))
else:
    print('格式输入错误!')

华氏温度和摄氏温度之间的转换公式:
F = 1.8*C+32

from termcolor import cprint

def buy(products, salary):
    shopping_card = []
    total_money = 0
    while True:
        x = input('请输入想购买的商品编号:')
        if x.upper() == 'Q':  # 退出时打印购物车商品
            if len(shopping_card) == 0:
                print('您的购物车是空的。')
                break
            else:
                print('---------已购买的商品---------')
                for y in range(len(shopping_card)):
                    print('%s. %s    %s' % (y, shopping_card[y]['name'], shopping_card[y]['price']))
                break
        elif int(x) < 0 or int(x) > len(products):
            print('输入的商品编号超出商品列表编号范围,请重新输入。')
            continue
        elif 0 <= int(x) <= len(products):
            # 添加商品到购物车
            shopping_card.append(products[int(x)])
            print(products[int(x)], '已成功加入购物车')
            total_money += products[int(x)]['price']
            cprint('共需支付: %d' % total_money, 'red', 'on_white', ['bold'])
            if int(salary) < total_money:
                balance = int(salary ) - total_money
                cprint('您的余额不足。当前可用余额为: %d' % balance, 'red', 'on_white', ['bold'])
                shopping_card.pop()
                continue
        else:
            print('内容输入错误,请重新输入需要购买的商品编号。')
            continue

goods = [
{"name": "电脑", "price": 1999},
{"name": "鼠标", "price": 10},
{"name": "游艇", "price": 20},
{"name": "美女", "price": 998},
]

user_info = {
    'shanshan':'123',
    'Judy':'321',
    'Miller':'234',
    'Mike':'432'
}

while True:
    user_name = input('请输入用户名:')
    password = input('请输入密码:')
    if user_info.get(user_name) == password:

        while True:
            wage = input('请输入您的月工资收入:')
            if wage.isdigit(): # 判断输入是否为数字
                break
            else:
                print('工资格式错误,请输入数字。')
                continue

        print('-----------商品列表-----------')

        for i in range(len(goods)):
            print('%s. %s  %s' % (i, goods[i]['name'], goods[i]['price']))
        buy(goods, wage)
        break

    else:
        print('用户名或密码错误,请重新输入。')
        continue

注释

在以上代码中,#后面所跟的语句表示注释,起提示的作用。程序不执行该语句,因此该语句也不会影响程序的执行。#一般用于单行注释,如果需要多行注释,需要使用一对'''将多行注释括起来。比如:

'''
这里就是一段多行注释。
这段多行注释用一对 ''' 括起来。
'''

代码结构

Python通过缩进表示语句之间的层次关系。比如F = 1.8*eval(TempStr[0:-1]) + 32print('转换后的温度值是{:.2f}F'.format(F))缩进一样,表示二者同一个层次。F = 1.8*eval(TempStr[0:-1]) + 32if向右缩进四个空格,表示F = 1.8*eval(TempStr[0:-1]) + 32if语句下的内容。

在程序中还涉及到两个经常使用到的函数:inputprint

input主要用于人机交互,允许用户通过计算机输入内容。使用方法如下:Str = input('请输入内容:')。“Str”是变量名,“请输入内容:”是提示用户的信息,只显示,不会打印输出。

通过input函数输入的内容为字符串。如果输入的是数字,实际上得到的是字符串型的数字,要变成数字型数字,可以用eval()、int()函数进行转换。

print主要用于打印输出内容。使用方法如下:print('Hello World'),运行后,会在屏幕上输出“Hello World”。

有了以上准备后,剩下的就是学习的漫漫长征路了!人生苦短,我用Python!

  • 由于本人使用的是Windows 10系统的电脑,所以笔记中提到的操作、设置都是在Windows系统下进行。
  • 本人正在Python学习的路上努力,笔记中难免会有一些错误之处,还请各位老师多批评指正。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 103,726评论 13 125
  • 前述 聊斋和《石头记》所异于其他古代传奇小说之处,就在于各自描写了诸多以女子为主角的故事,这些女子容貌虽然各异,但...
    梵温2阅读 501评论 0 4
  • 《失控的布局》是简书宝玉赠书活动送出的一本书,很幸运成为拿到本书的一员。本书作者原来也是简书签约作者李陌,擅长推理...
    张四毛阅读 222评论 8 15
  • 如果一个女人长得漂亮,双商又很高的话,基本上都会活的很漂亮。 如果一个女人长得漂亮,双商但凡有一商不足,那就要靠运...
    牧田麻麻阅读 29评论 0 0
  • 额呵呵全都占用阅读 97评论 0 3