文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

初识Python(一)

2023-01-31 02:04

关注

一、第一个Python语句

创建 hello.py 文件,内容如下:

print 'hello,world'

执行 hello.py 文件,即:

python hello.py

执行结果如下:

wKiom1iJtkeSuGDUAAAG_o9dItw008.png

python内部执行过程如下:

wKioL1iJsN7A7bjYAADuBTdiMUs471.jpg

二、解释器

默认执行上述的hello.py文件,需要明确的指出hello.py脚本由python解释器来执行,即python hello.py。

另外还可在hello.py的文件头部指定解释器,可像执行shell脚本一样执行python脚本,如下:

#!/usr/bin/env python
  
print 'hello,world'

并赋予hello.py可执行权限,如:chmod +x hello.py

这样,直接执行./hello.py或hello.py,执行结果如下:

wKiom1iJuWai7h9YAAAIQuRlDhs668.png

三、内容编码

python解释器在加载.py文件中的代码时,会对内容进行编码(默认ascill)

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用8位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示256个符号。

BinDecHex缩写/字符解释
00000000000NUL(null)空字符
00000001101SOH(start of headling)开始
00000010202STX (start of text)正文开始
00000011303ETX (end of text)正文结束
00000100404EOT (end of transmission)传输结束
00000101505ENQ (enquiry)请求
00000110606ACK (acknowledge)收到通知
00000111707BEL (bell)响铃
00001000808BS (backspace)退格
00001001909HT (horizontal tab)水平制表符
00001010100ALF (NL line feed, new line)换行键
00001011110BVT (vertical tab)垂直制表符
00001100120CFF (NP form feed, new page)换页键
00001101130DCR (carriage return)回车键
00001110140ESO (shift out)不用切换
00001111150FSI (shift in)启用切换
000100001610DLE (data link escape)数据链路转义
000100011711DC1 (device control 1)设备控制1
000100101812DC2 (device control 2)设备控制2
000100111913DC3 (device control 3)设备控制3
000101002014DC4 (device control 4)设备控制4
000101012115NAK (negative acknowledge)拒绝接收
000101102216SYN (synchronous idle)同步空闲
000101112317ETB (end of trans. block)传输块结束
000110002418CAN (cancel)取消
000110012519EM (end of medium)介质中断
00011010261ASUB (substitute)替补
00011011271BESC (escape)溢出
00011100281CFS (file separator)文件分割符
00011101291DGS (group separator)分组符
00011110301ERS (record separator)记录分离符
00011111311FUS (unit separator)单元分隔符
001000003220(space)空格
001000013321!
001000103422"
001000113523#
001001003624$
001001013725%
001001103826&
001001113927'
001010004028(
001010014129)
00101010422A*
00101011432B+
00101100442C,
00101101452D-
00101110462E.
00101111472F/
0011000048300
0011000149311
0011001050322
0011001151333
0011010052344
0011010153355
0011011054366
0011011155377
0011100056388
0011100157399
00111010583A:
00111011593B;
00111100603C<
00111101613D=
00111110623E>
00111111633F?
010000006440@
010000016541A
010000106642B
010000116743C
010001006844D
010001016945E
010001107046F
010001117147G
010010007248H
010010017349I
01001010744AJ
01001011754BK
01001100764CL
01001101774DM
01001110784EN
01001111794FO
010100008050P
010100018151Q
010100108252R
010100118353S
010101008454T
010101018555U
010101108656V
010101118757W
010110008858X
010110018959Y
01011010905AZ
01011011915B[
01011100925C\
01011101935D]
01011110945E^
01011111955F_
011000009660`
011000019761a
011000109862b
011000119963c
0110010010064d
0110010110165e
0110011010266f
0110011110367g
0110100010468h
0110100110569i
011010101066Aj
011010111076Bk
011011001086Cl
011011011096Dm
011011101106En
011011111116Fo
0111000011270p
0111000111371q
0111001011472r
0111001111573s
0111010011674t
0111010111775u
0111011011876v
0111011111977w
0111100012078x
0111100112179y
011110101227Az
011110111237B{
011111001247C|
011111011257D}
011111101267E~
011111111277FDEL (delete)删除

由于ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode;

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由16位来表示(2个字节),即:2 **16 = 65536;

UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存,等;

所以,python解释器在加载.py文件中的代码时,会对内容进行编码(默认ascill),如果是python代码中包含中文,将会执行出错,如下:

#!/usr/bin/env python

print "你好,世界"

报错如下:

wKioL1iJwpnh8FRAAAAu7LRM5WY995.png

因此,需要在py文件中显示的告诉python解释器,用什么编码来执行代码,如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

print "你好,世界"

结果如下:

wKiom1iJw2iCToT8AAAKeYpHB9c086.png

四、注释

当行注释:在语句前加上#,被注释的语句在python中不会被执行,如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

#这是python的第一个示例代码;

print "你好,世界"

注:#!/usr/bin/env python并不是单纯的注释信息,主要用来指定用什么解释器运行脚本以及解释器所在的位置;而# -*- coding: utf-8 -*-,用来指定文件编码为utf-8;

多行注释:在段落的前一行或开头及后一行或结尾,用'''包含起来,如下:

#!/usr/bin/env python
# -*- coding: utf-8 -*-

'''
这是
python的
第一个
示例代码
'''

print "你好,世界"

或者

#!/usr/bin/env python
# -*- coding: utf-8 -*-

'''这是
python的
第一个
示例代码'''

print "你好,世界"

执行脚本传入参数

Python可通过引用大量的模块,从而使开发的Python程序更加简洁、简明。Python的类库主要包括三种:

  • Python内部提供的模块

  • 第三方模块

    • 业内开源的模块

    • 程序员自己开发的模块

例如,Python内部提供一个sys的模块,其中的sys.platform用来获取当前系统平台,可使用import命令或from ...import...命令导入模块;

#!/usr/bin/env python
# -*- coding: utf-8 -*-

import sys
 
print sys.platform

或者

#!/usr/bin/env python
# -*- coding: utf-8 -*-
  
from sys import platform
  
print platform

执行结果如下:

wKiom1iJ5Afh4SbaAAAJM46557U768.png

六、pyc 文件

在执行Python代码时,如果导入了其他的.py文件,那么在执行过程中会自动生成一个与其同名的.pyc文件,该文件就是Python解释器编译之后产生的字节码;代码经过编译可以产生字节码,字节码通过反编译也可以得到代码;


阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯