Python学习 - 基础入门(1)

原创 2015年11月20日 05:48:12

1. 第一个程序 hello world

print("hello world!")

注意:python文件名字的后缀是py

2.关于注释

  • 在Python中有两种注释,一种是单行注释,一种是多行注释。

通常情况下,你只需要使用#(井号)就可以注释掉一行

print("没有注释")
#print("有一个注释")

多行注释与单行有些不同。在需要注释的语句块的前后分别使用三个单引号(”’)。

'''
print("我在注释里")
print ("我还在注释里")
'''
print("我在注释的外面")

3. 关于符号(#!)

  • 1.这个符号(#!)叫做”Shebang”或者”Sha-bang”。通常在Unix和Linux系统的脚本中第一行开头出现。它是Sharp和Bang的组合词。Sharp for #, Bang for ! 类似的情况是,C#通常被称为C Sharp

  • 2.(#!)必须位于脚本的第一行,并且顶格填写,否则都是错的,即使Sha-Bang之前的内容都是注释!

  • 3.在同一个脚本中如果出现几次,那只有第一行的Sha-Bang(#!)会生效,其余的会视为注释。

  • 4.Sha-Bang(#!)不是注释。作用是告知该脚本使用的是哪种命令解释器。虽然很多情况下省略了Sha-Bang(#!)仍然能够运行脚本,这是由于系统在这种情况下是默认使用了当前命令行解释器。

那正确的写法是怎么样的呢?

#!/usr/bin/env python

以下写法是错的:

#!/usr/bin/python
#!/bin/python

为什么推荐这种写法:#!/usr/bin/env python

因为解释器的默认安装路径在各个操作系统是不太一样的,有的是/bin/,有的是/usr/bin/,甚至有可能是用户自定义的路径,使用env就基本上能够通用了。虽然env也有可能在/bin/或者/usr/bin/中,但通常的情况是在这两个路径下都有env,或者其中一个是另一个的符号链接。

最后提醒一下,有时候设定的cronjob异常,但是命令行能够执行成功,请先检查一下Sha-Bang(#!)是否合法,然后检查是否缺少了必须的环境变量,命令行能够执行成功可能是利用了默认的命令行解释器和环境变量。

最后需要注意的几点

  1. 如果#!之后的解释程序是一个可执行文件,那么执行这个脚本时,它就会把文件名及其参数一起作为参数传给那个解释程序去执行。

  2. 如果#!指定的解释程序没有可执行权限,则会报错“bad interpreter: Permission denied”。
    如果#!指定的解释程序不是一个可执行文件,那么指定的解释程序会被忽略,转而交给当前的SHELL去执行这个脚本。

  3. 如果#!指定的解释程序不存在,那么会报错“bad interpreter: No such file or directory”。
    注意:#!之后的解释程序,需要写其绝对路径(如:#!/bin/bash),它是不会自动到$PATH中寻找解释器的。

  4. 当然,如果你使用”bash test.sh”这样的命令来执行脚本,那么#!这一行将会被忽略掉,解释器当然是用命令行中显式指定的bash。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Python初学者(零基础学习Python、Python入门)书籍、视频、资料、社区推荐

转载自:https://github.com/Yixiaohan/codeparkshare Python初学者(零基础学习Python、Python入门)书籍、视频、资料、社区推荐 ...
  • worfs123456
  • worfs123456
  • 2016年08月17日 16:00
  • 5677

Python入门教程 超详细1小时学会Python

本文适合有经验的程序员尽快进入Python世界.特别地,如果你掌握Java和Javascript,不用1小时你就可以用Python快速流畅地写有用的Python程序.  为什么使用Python  ...
  • jb19900111
  • jb19900111
  • 2014年01月02日 14:26
  • 2816

[转]《零基础入门深度学习》系列文章(教程+代码)

无论即将到来的是大数据时代还是人工智能时代,亦或是传统行业使用人工智能在云上处理大数据的时代,作为一个有理想有追求的程序员,不懂深度学习(Deep Learning)这个超热的技术,会不会感觉马上就o...
  • TS1130
  • TS1130
  • 2016年11月20日 21:07
  • 32951

零基础入门学习Python(1)

零基础入门学习Python(1)看了小甲鱼的零基础入门学习Python,用的是Python3.2,自己做了一些笔记,希望拿出来跟大家分享一下,比较适合初学者入门。...
  • qq_33256568
  • qq_33256568
  • 2015年12月04日 22:51
  • 525

python基础入门学习笔记(1)

python基础入门学习笔记(1)
  • u013018774
  • u013018774
  • 2017年03月25日 22:12
  • 212

零基础入门学习Python(21):魔法方法(1)构造和析构

零基础入门学习Python(21):魔法方法(1)构造和析构从这节开始,我们介绍下Python的魔法方法:魔法方法总是被双下划线包围。 之前有提到过初始化的魔法方法__init__(),它返回Non...
  • qq_33256568
  • qq_33256568
  • 2015年12月25日 23:11
  • 398

零基础入门学习Python(16):对象(1)

零基础入门学习Python(16):对象(1)Python无处不对象,对象 = 属性 + 方法(变量+函数)>>> class FirstClass: #Python中的类名约定以大...
  • qq_33256568
  • qq_33256568
  • 2015年12月21日 13:39
  • 411

蓝鸥iOS从零基础到精通就业-OC语言入门 对象内存管理1

蓝鸥iOS从零基础到精通就业-OC语言入门 对象内存管理1
  • lanouluanbin
  • lanouluanbin
  • 2017年01月04日 14:17
  • 125

JavaScript基础大全 (1-4) 学习必备珍藏品

  • 2008年05月31日 01:00
  • 8.37MB
  • 下载

[cocos2d-x学习笔记][入门基础]按钮的实现

在游戏中经常会点击某一个图xing
  • HJJxiaoxiaobai
  • HJJxiaoxiaobai
  • 2014年09月13日 14:40
  • 576
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Python学习 - 基础入门(1)
举报原因:
原因补充:

(最多只允许输入30个字)