初学Python遇到的问题一二
这篇文章只是学Python最最最基础的部分知识,如果你已经有过python经验,哪怕就一点点经验,或许你都遇到过,但相信这些问题对你来说早已不算问题了,所以请跳过吧,用你的时间去学习更多其他的知识就好~ ^_^
但是这篇文章中提到的问题尽管很简单,简单到幼稚到打点滴,但记录下来,为了提醒自己,学习的旅途中,总会有一些或大或小的问题,我们在嘲笑新人为什么这么简单的问题都不懂之前, 别忘了,我们自己也被别人或者未来的自己嘲笑过~
问我为什么学Python?如果我告诉你,我就是一时兴起,你信么?不管你信不信,反正我信了~哈哈……
好吧,其实还真就是一时兴起,尽管Python流行了好一段时间了,很多公司都在用,估计出去面试也会被问到,但是由于自己工作中接触不到,我是没有机会通过工作来学习,也没有那种动力去学的,话说Python这个单词的读音我都不太懂,还是一次偶然和同事聊天聊起来,同事说的~
于是今天就试着学学这门俗话称适合初学者学习的简单的语言,学习语言,第一步就是需要安装python环境,于是,按部就班地来到网站下载安装,选择的是默认安装,装完后,打开cmd,输入python……

确定不是在耍我?泥煤……上网查了下,原来需要配置环境变量,这里我安装的是当前最新版本 3.5.x,根据网络上的说法,需要在Path里添加:C:\Python35就可以了,于是打开环境变量设置的对话框设置好了,再重做之前的操作……答案是一样的……
网上又说,更改了环境变量,需要重启电脑……重启……等待重启完成之后,再次重复之前的操作……得到了一样的提示……
'python' is not recognized as an internal or external command,
operable program or batch file.
说实话,学习编程语言,除了大学期间学Java设置环境变量把人折腾崩溃之后,还真没有什么语言在这一步就让我如此抓狂的……真有点欲哭无泪……
或许是我安装不对,于是选择卸载,重装,这才发现,原来是自己安装的时候太大意了……再次打开安装页面,才发现最底下有一个复选框:Add Python 3.5 to PATH:

事实证明,能在安装的时候让软件自己写入PATH比自己手动添加的正确率高了不是一般的多……甚至可以不用care到底在环境变量里添加了什么鬼,反正再次运行的时候,成功了……

回到环境变量的设置当中,会发现,添加的内容居然不是网上说的 C:\Python35, 而是Python的路径,且最后是 \Python35-xx, 果然根据网上的内容手动添加容易出错~
环境装好了,也验证了python的可用性,接下来可以正式学习这门语言了~
话说Python这门语言也是有够奇葩的,居然没有向下兼容,起初google搜索到的学习资料默认是python2.7.x的版本,想着,语言都大同小异,对于一门新的语言,其实没必要从最新的文档学起,因为最新的文档无非是包含了一些更为便捷或者新增了一些好用的方法而已。于是很用心地跟着打开的教程敲下代码:print "Hello world",居然报错了!!!

天地为证,我是跟着网站上的内容一字一字敲的,十分确定我敲的是print,而不是printf,在摒除了拼写错误引起的问题之后,我彻底郁闷了,这大概是第一门我败在了Hello world上的语言……
这时候万能的Stack Overflow帮了很大的忙,原来print " xxx "的语法为Python2.x的,到了Python3已经不适用了,不应该啊,万一之前的项目用的是python2的语法,但随着技术的提升,或者新版本更好用的语法出现了,我们要升级用python3了,却发现前面的代码需要全部翻盘……这确定是好事么?好吧,我没有上网去搜为什么Python会做出这样的语法变更决定,这里也不多做评论了~
将代码改成 print ("Hello world"), 再次运行代码,终于是成功了~

但是这样交互式的编码,其实和生活工作中是常用于需要即写即得的情况的,而不是我们写代码的习惯,我们一般都会选择将代码写在文件里,需要的时候,将一个文件运行起来,于是创建了一个 .py的文件,将代码写入其中。
根据网络上所说,只需要输入 python [文件路径] 就可以运行了,于是,将文件放入C盘盘符下,运行Hello world, 相信我们能得到的答案是预期的,然而……

SyntaxError: invalid syntax.... 赶紧打开文件查看是不是拼写错误,有没有中英文符号错误……一再确认之后,又一次陷入了崩溃境地……不就是一个Hello world么,这个world居然如此不欢迎我……
与其开始怀疑网络上是否出现了错误,我选择尝试将invalid syntax放在google search看看是不是有谁和我遇到了同样的麻烦……果然,还真有……

除了用的语法不一样之外,遇到的问题一模一样……同是天涯沦落人啊,都是被一行最简单的代码给击倒的,赶紧往下拉,看看有没有人来回到这看起来真的够白痴的问题:

这不是真的,居然说因为我们是用的python解释器直接运行引起的……如果使用自带的command window 就不会发生这样的情况,抱着怀疑的态度,我还是选择尝试用系统自带的command window,居然……

成功了?所以,在command window里输入python关键字进入的是python的解释器,而在python解释器里只能进行及时交互。
这样的情况,还真是第一次碰到,也估计不少学习python的初学者(无论是否有编码经验)会遇到的简单问题。
好吧,到这里,仅仅是安装python到输入一句打印hello world,就已然遇到了不少问题,相信继续学下去还会遇到不少问题的,一步一步慢慢来吧~ 也要衷心感谢Stack Overflow 网站给我们提供了很多问题的解答,无论问题简单与否,都有热心的同仁们耐心地为我们解答~
想要第一时间看到软件测试系列文章的更新及更多精彩内容可以扫描下面二维码关注微信公众号: 倚楼听风雨的如月

初学Python遇到的问题一二的更多相关文章
- 初学Python
初学Python 1.Python初识 life is short you need python--龟叔名言 Python是一种简洁优美语法接近自然语言的一种全栈开发语言,由"龟叔&quo ...
- 无开发经验,初学python
1.无开发经验,初学python 如果你不会其他语言,python是你的第一门语言: A Byte of Python (简明python教程,这个有中文版简明 Python 教程)是非常好的入门 ...
- 初学 Python(十五)——装饰器
初学 Python(十五)--装饰器 初学 Python,主要整理一些学习到的知识点,这次是生成器. #-*- coding:utf-8 -*- import functools def curren ...
- 初学 Python(十四)——生成器
初学 Python(十四)--生成器 初学 Python,主要整理一些学习到的知识点,这次是生成器. # -*- coding:utf-8 -*- ''''' 生成式的作用: 减少内存占有,不用一次性 ...
- 初学 Python(十三)——匿名函数
初学 Python(十三)--匿名函数 初学 Python,主要整理一些学习到的知识点,这次是匿名函数. # -*- coding:utf-8 -*- #关键字lambda定义的函数都是匿名函数 #做 ...
- 初学 Python(十二)——高阶函数
初学 Python(十二)--高阶函数 初学 Python,主要整理一些学习到的知识点,这次是高阶函数. #-*- coding:utf-8 -*- ''''' 话说高阶函数: 能用函数作为参数的函数 ...
- 初学 Python(十一)——切片
初学 Python(十一)--切片 初学 Python,主要整理一些学习到的知识点,这次是切片. #-*- coding:utf-8 -*- ''''' 切片 ''' L = ['name','age ...
- 初学Python(十)——列表生成式
初学Python(十)--列表生成式 初学Python,主要整理一些学习到的知识点,这次是列表生成式. # -*- coding:utf-8 -*- ''''' 列表生成式 ''' #一行代码表达所有 ...
- 初学Python(九)——函数
初学Python(九)--函数 初学Python,主要整理一些学习到的知识点,这次是函数. 函数定义: # -*- coding:utf-8 -*- #函数的定义 def my_function(x) ...
随机推荐
- Web Api 与 Andriod 接口对接开发经验
最近一直急着在负责弄Asp.Net Web Api 与 Andriod 接口开发的对接工作! 刚听说要用Asp.Net Web Api去跟 Andriod 那端做接口对接工作,自己也是第一次接触Web ...
- 通过js实现回到顶部功能
许多商城网址,当我们滚动到一定高度时,我们会发现一般会出现一个回到顶部的js选项,点击轻松实现回到顶部,交互效果会显得比较人性化,且回到顶部过程中若在滚动滚动条时可以停止滚动,现在让我们来实现吧 我总 ...
- IEEE/ACM ASONAM 2014 Industry Track Call for Papers
IEEE/ACM International Conference on Advances in Social Network Analysis and Mining (ASONAM) 2014 In ...
- 一种让 IE6/7/8 支持 media query 响应式设计的方法
在不同的浏览器宽度下使用不同的 CSS 声明,常见的方案是使用 media query,但这个方案不支持 IE9 以下浏览器. 国外比较流行的 UI 框架 bootstrap v3 版本中使用 med ...
- 日志系统实战(一)—AOP静态注入
背景 近期在写日志系统,需要在运行时在函数内注入日志记录,并附带函数信息,这时就想到用Aop注入的方式. AOP分动态注入和静态注入两种注入的方式. 动态注入方式 利用Remoting的Context ...
- Step by step Dynamics CRM 2013安装
原创地址:http://www.cnblogs.com/jfzhu/p/4008391.html 转载请注明出处 SQL Server可以与CRM装在同一台计算机上,也可安装在不同的计算机上.演示 ...
- 【原】安装Win7和Ubuntu双系统后,Win7耳机无声音的解决办法
最近安装了Ubuntu的桌面版,作成了双系统,可是发现了一个问题:进入Win7后有时插耳机会没有声音,外放有声音.后来更新驱动也没有解决问题,最后在网上查到了解决办法. 产生原因:进入Ubuntu后, ...
- 2013 duilib入门简明教程 -- 事件处理和消息响应 (17)
界面的显示方面就都讲完啦,下面来介绍下控件的响应. 前面的教程只讲了按钮和Tab的响应,即在Notify函数里处理.其实duilib还提供了另外一种响应的方法,即消息映射DUI_BEG ...
- 20个JS优化代码技巧
原文网址链接为:http://www.jstips.co/ .截取了一部分本人认为比较实用的技巧分享给大家.其中一小部分技巧为JS面向对象的写法,不宜一一列出.关于JS面向对象的写法可参考本人前几篇随 ...
- Angular1还是Angular2
Angular1还是Angular2 学完angular1,尝试去看了下angular2,虽然号称更强更快,可是这基于ES6和TypeScript的全新框架让人完全招架不住,而且我只是需要angula ...