初学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) ...
随机推荐
- Android四大组件--MediaPlayer详解(转)
一. MediaPlayer 状态机 介绍 Android MediaPlayer 状态即图例 : 1. Idle (闲置) 状态 和 End (结束) 状态 MediaPlayer 对象声明周期 : ...
- 【转】Apache 配置虚拟主机三种方式
Apache 配置虚拟主机三种方式 原文博客http://www.cnblogs.com/hi-bazinga/archive/2012/04/23/2466605.html 一.基于IP 1. 假 ...
- 电子商务网站SQL注入项目实战一例
故事A段:发现整站SQL对外输出: 有个朋友的网站,由于是外包项目,深圳某公司开发的,某天我帮他检测了一下网站相关情况. 我查看了页面源代码,发现了个惊人的事情,竟然整站打印SQL到Html里,着实吓 ...
- 系统监控工具 Tsar
Tsar是淘宝的一个用来收集服务器系统和应用信息的采集报告工具,如收集服务器的系统信息(cpu,mem等),以及应用数据(nginx.swift等),收集到的数据存储在服务器磁盘上,可以随时查询历史信 ...
- 全新 Mac 安装指南(编程篇)(环境变量、Shell 终端、SSH 远程连接)
注:本文专门用于指导对计算机编程与设计(尤其是互联网产品开发与设计)感兴趣的 Mac 新用户,如何在 Mac OS X 系统上配置开发与上网环境,另有<全新 Mac 安装指南(通用篇)>作 ...
- Morris.js和flot绘制折线图的比较
[文章摘要] 最近用开源的AdminLTE做框架感觉效果特别好,其针对图表库Morris.js和flot都提供了不错的支持,也都提供了这两者的例子.不过Morris.js是基于Raphael.js来的 ...
- Hibernate的三种状态及对象生命周期
理解Hibernate的三种状态,更利于理解Hibernate的运行机制,这些可以让你在开发中对疑点问题的定位产生关键性的帮助. 三种状态 临时状态(Transient):在通过new关键字, ...
- Python格式化输出
今天写程序又记不清格式化输出细节了……= =索性整理一下. python print格式化输出. 1. 打印字符串 print ("His name is %s"%("A ...
- JavaScript中的百变大咖~this
原文链接:http://www.jeffjade.com/2015/08/03/2015-08-03-javascript-this/ JavaScript作为一种脚本语言身份的存在,因此被很多人认为 ...
- python django基础(二)
django MTV模式之----template模版 django是动态的网页,后台的数据需要动态的插入到前端中,这时就依赖于django的template模版框架.django支持多种模版框架,下 ...