Python学习week1

编译型:源码编译成可执行代码,机器直接执行,VB,C,C++;

解释型:源码一边编译一边执行,Basic,python,源码以明文保存,不能加密,只能公开;

中间型:预编译一次,然后一边解释一边执行,Java,c#,Python。Java运行在虚拟机上,源码预编译成中间代码,运行过程中再由解释器翻译成可执行代码。

 

Python的运行过程

在说这个问题之前,我们先来说两个概念,PyCodeObject和pyc文件。

 

我们在硬盘上看到的pyc自然不必多说,而其实PyCodeObject则是Python编译器真正编译成的结果。我们先简单知道就可以了,继续向下看。

 

当python程序运行时,编译的结果则是保存在位于内存中的PyCodeObject中,当Python程序运行结束时,Python解释器则将PyCodeObject写回到pyc文件中。

 

当python程序第二次运行时,首先程序会在硬盘中寻找pyc文件,如果找到,则直接载入,否则就重复上面的过程。

 

所以我们应该这样来定位PyCodeObject和pyc文件,我们说pyc文件其实是PyCodeObject的一种持久化保存方式[https://www.cnblogs.com/alex3714/articles/5465198.html]。

 

 

ASCII码:一个字节;

unicode:两个字节,包含中文;

utf-8:英文一个字节,中文三个字节。

 

Python2默认使用ASCII存储,不支持中文,需要在程序头部加入:

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

Python3默认使用unicode存储,支持中文

 

单行注释:#

多行注释:’’’或者”””,python中单引号和双引号一样

’’’还可用于打印多行:

Input用于输入信息:

Python2中的raw_input和python3的input完全一样,不要使用python2中的input。
name=input(“username:”)

默认所有的输入均为字符串类型,如果需要输入其他数据类型,则需要强制类型转换。

age=int(input(“age:”))

 

格式化输出:推荐使用方法3和4,尽量避免使用方法1

方法1:拼接字符串

name=input("name:")
job=input("job:")
salary=input("salary:")
info='''
-----info----'''+'''
name:'''+name+'''
job:'''+job+'''
salary:'''+salary


print(info)

 

方法二:

使用占位符:%s(%s代表string,%d代表数字,%f代表浮点)

info2='''
****info of %s***
name:%s
job:%s
salary:%s
'''%(name,name,job,salary)

print(info2)

 

Print(type(age))输出变量age的数据类型。

 

方法3:推荐使用

使用format()

info3='''
+++info of {_name}+++
name:{_name}
job:{_job}
salary:{_salary}
'''.format(_name=name,

           _job=job,
           _salary=salary)
print(info3)

 

方法4:

使用format()

info4='''
+++info of {0}+++
name:{0}
job:{1}
salary:{2}
'''.format(name,job,salary)

print(info4)

 

密文输入:

import getpass

password=getpass.getpass(“password:”)

 

if 表达式:

       执行语句

elif 表达式:

       执行语句

else:

       执行语句

 

使用while循环:

age_of_oldboy=50
count=0
while count<3:
    count+=1
    age = int(input("guess age:"))
    if age>age_of_oldboy:
        print("think smaller.")
    elif age<age_of_oldboy:
        print("think bigger.")
    else:
        print("you got it.")
        break
else
:

    print("you have trid too many times...")

 

使用for循环:

age_of_oldboy=50
for i in range(3):
    age = int(input("guess age:"))
    if age>age_of_oldboy:
        print("think smaller.")
    elif age<age_of_oldboy:
        print("think bigger.")
    else:
        print("you got it.")
        break
else
:

    print("you have trid too many times...")

 

 

for i in range(0,10,3):
    print(i)

打印结果如下:

0

3

6

9

 

continue:跳出本次循环,进入下一次循环

break:结束整个循环

posted @ 2018-09-05 09:25  我的下铺刚田武  阅读(251)  评论(0编辑  收藏  举报