问道python之基础篇【二】python入门

问道python之基础篇【二】

Python入门

1.python的工作过程

python解释器把源代码转换为字节码的中间形式,然后再把它翻译成机器使用的机器语言并运行。

2.pyc文件

2.1.什么是pyc文件

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

ps:代码经过编译可以产生字节码;字节码通过反编译也可以得到代码。

Pyc文件一般由3个部分组成:

最开始4个字节是一个Maigc int,标识此pyc的版本信息不同的版本的Maigc都在python/import.c内定义。

接下来四个字节还是int,是pyc产生的时间;接下来是序列化了的PyCodeObject(次结构在include/code.h内定义)。序列化方法在python/marshal.c内定义

2.2.  pyc文件的作用

因为py文件是可以直接看到源码的,如果你是开发商业软件的话,不可能把源码也泄露出去把?所以就需要编译为pyc后,再发布出去。当然,pyc文件也是可以反编译的,不同版本编译后的pyc文件是不同的,根据python源码中提供的opcode,可以根据pyc文件反编译出py文件源码,网上有类似的工具,不过该工具从python2.4开始就收费了,不过自己可以修改python的源代码中的opcode文件,重新编译python,从而防止不法分子的破解。

3.变量

3.1.声明变量

#!/usr.bin/env python
# -*- coding:utf-8 -*-
name = ‘anying‘

上述代码声明了一个变量,变量名为:name,变量name的值为:“anying”

变量的作用:昵称,其指内存里某个地址中保存的内容。

在python中,如果要使用一个变量,不需要提前声明,只需要在用的时候,给这个变量赋值即可。需要强调的是,只要用一个变量,就要给这个变量赋值。

3.2.
变量的定义规则:

(1)  
变量名可以包括字母、数字、下划线,但是数字不能作为开头,例如:name1是合法变量名,而1name就不可以

(2)  
系统关键字不能做变量名使用

(3)  
除了下划线以外,其他符号不能作为变量名使用

(4)  
Python的变量名是区分大小写的,例如:name和Name就是两个变量名,而非相同的变量。

3.3.
变量的简单使用

3.3.1

#!/usr/bin/env
python

# -*-
coding:utf-8 -*-

name
= input(“请输入用户名:”)

print
name

3.3.2.输入密码时,如果想要不可见,需要利用getpass模块中的getpass方法。

#!/usr/bin/env
python

#
-*- coding:utf-8 -*-

import
getpass

# 将用户输入的内容赋值给pwd变量

pwd
= getpass.getpass(“请输入密码:”)

#打印输入的内容

print
pwd

4.流程控制和缩进

4.1.条件语句和缩进

需求一:猜数字游戏

#初始化一个幸运数字

#提示输入所猜的数字

#如果输入的数字比初始化的数字大,则输出猜大了

#如果输入的数字比初始化的数字小,则输出猜小了

#如果输入的数字和初始化的数字一样,则输出bingo

#!/usr.bin/env python
# -*- coding:utf-8 -*-
num = 8
guess = input("请输入你的幸运数字:")
print guess
if guess > num:
    print 猜大了!‘
if guess < num:
    print 猜小了!‘
if guess == num:
    print ‘bingo‘

需求二:用户登录验证

#提示输入用户名和密码

#验证用户名和密码

#如果错误,则提示用户名或密码错误

#如果正确,则输出 欢迎, xxx

#!/usr/bin/env python
# -*- coding:utf-8 -*-
import getpass
user = raw_input(请输入你的用户名:‘)
pwd = input(请输入你的密码:‘)
if user == ‘anying‘ and pwd == ‘123‘:
    print ‘welcome,%s‘ % user
else:
    print 用户名或密码错误‘

4.2. while循环

它的原理是:当条件为真时,一直执行下去,当条件为假时停止!

continue是跳出本地循环,break是跳出整个循环

4.3. 基本数据类型

       

时间: 2024-10-25 09:11:50

问道python之基础篇【二】python入门的相关文章

问道python之基础篇【一】 认识python

问道python之基础篇[一] 认识python 1.python的简介 1.1.什么是python? Python是一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. Python语法简洁清晰,特色之一是强制用空白符作为语句缩进. Python具有丰富和强大的库.它常被昵称为胶水语言,能够用其他语言制作的各种模块(尤其是C++)很轻松地联结在一起. 1.2.python的特点 简单,易学,免费.开源,高层语言,移植性,

Python学习基础篇第一篇——快速入门(适合初学者)

一.Python学习基础篇第一篇--(快速入门) 建议从Python2.7开始学习,Python2.7可以支持扩展大量的第三方类库,是目前比较成熟的版本 编写代码的软件推荐将python自带的IDLE和PyCharm集成IDE结合起来使用 1.1 Python命令行 Python命令行将以 >>> 开始,比如 >>>print 'Hello World!' 对于验证简单的命令可以在python自带的IDLE中完成  1.2 在Python自带的IDLE写一段小程序 在所

JMS基础篇(二)

简介 异构集成是消息发挥作用的一个领域,大型公司内部可能会遇到很多的平台,Java,.net或者公司自己的平台等. 传送消息还应该支持异步机制,以提高系统整体的性能.异步传输一条消息意味着,发送者不必等到接收者接收或者处理消息,可以接着做后续的处理. 应用程序发送消息至另外一个应用程序,需要使用到消息中间件.消息中间件应提供容错,负载均衡,可伸缩的事务性等特性. JMS与JDBC类似,是一种与厂商无关的API.应用程序开发者可以使用同样的API来访问不同的系统. 可以认为JMS是一种标准,各消息

php基础篇-二维数组排序 array_multisort

原文:php基础篇-二维数组排序 array_multisort 对2维数组或者多维数组排序是常见的问题,在php中我们有个专门的多维数组排序函数,下面简单介绍下: array_multisort(array1,sorting order, sorting type,array2,array3..)是对多个数组或多维数组进行排序的函数. array1 必需.规定输入的数组. sorting order 可选.规定排列顺序.可能的值是 SORT_ASC 和 SORT_DESC. sorting t

php基础篇-二维数组排序姐妹篇

前面介绍了php多维数组排序的一个函数array_multisort() ,想了解的人可以点击 二维数组排序 array_multisort 下面介绍下不适用array_multisort()进行多维数组的排序. 这里介绍下2个php排序函数,一个是asort,一个是arsort. asort(array,sorttype) 函数对数组进行排序并保持索引关系.主要用于对那些单元顺序很重要的结合数组进行排序. 可选的第二个参数包含了附加的排序标识. SORT_REGULAR - 默认.以它们原来的

Python数据分析基础与实践 Python数据分析实践课程 Python视频教程

课程简介: Python数据分析基础与实践 Python数据分析实践课程 Python视频教程----------------------课程目录------------------------------├<章节1Python概况>├<章节2Python安装>├<章节3数据准备>├<章节4数据处理>├<章节5数据可视化>├<章节6网页数据抓取>├<章节7连接MySQL>├<章节8数据分析> 下载地址:百度网盘

Qt入门之基础篇 ( 二 ) :Qt项目建立、编译、运行和发布过程解析

转载请注明出处:CN_Simo. 题解: 本篇内容主讲Qt应用从创建到发布的整个过程,旨在帮助读者能够快速走进Qt的世界. 本来计划是讲解Qt源码静态编译,如此的话读者可能并不能清楚地知道为何要静态编译,所以借此篇内容说明一下原由并为之后文章的学习做准备. 即使本片内容只是在围绕一个小小的HelloWorld程序开展,但还是希望朋友们不要急于求成,"欲速则不达". 文章整体思路: 我们循序渐进地来看,一个Qt应用的完成有以下一个重要的步骤: 项目创建->源码编译->程序运行

基础篇D1 -- Python学习之路

编程语言分类 1. 编译型和解释型 编译型:有负责翻译的程序来给源代码进行转换,生成可执行代码.这个过程叫做编译(compile),负责编译的程序叫做编译器(compiler).源代码进行编译后会生成一个可执行文件. 编译型语言操作过程: 优点:编译器一般会有预编译的过程对代码进行优化.因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高.可以脱离语言环境独立运行. 缺点:编译之后如果需要修改就需要整个模块重新编译.编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会

python(基础练习二)

基础练习二: 1.有一些数存在列表中, 如:L = [1, 3, 2, 1, 6, 4, 2, ...., 98, 82] 1) 将列表L中出现的数字存于另一个列表L2中 要求: 重复出现多次的数字只在L2列表中保留一份(去重) 2) 将列表中出现两次的数字存于L3列表中(在L3列表中保留一份) L = [1, 3, 2, 1, 6, 4, 2, 98, 82] # 1) 将列表L中出现的数字存于另一个列表L2中 # 要求: # 重复出现多次的数字只在L2列表中保留一份(去重) L2 = []