1.1 Python优点

1、简单、优雅、明确
2、强大的模块三方库
3、易移植
4、面向对象
5、可扩展(c\java\c#...)

1.2 Python缺点

1、代码不能加密
2、速度慢

 

1.3 Python用途

一软件开发
1、游戏后台、搜索、图形界面
2、网站
3、C\S软件
4、科学运算
 
 
 

1.4 python解释器

 
— Cpython 官方标准
— Ipython    ipython是一个python的交互式shell,比默认的python shell好用很多,支持变量自动补全,自动缩进,支持bash shell命令,内置了许多很有用的功能和函数,在ubuntu下只要sudo apt-get install ipython就装好了,通过ipthon启动。
— Jython--Jython是一种完整的语言,而不是一个Java翻译器或仅仅是一个Python编译器,它是一个Python语言在Java中的完全实现。Jython 也有很多从CPython中继承的模块库。最有趣的事情是Jython不像CPython或其他任何高级语言,它提供了对其实现语言的一切存取。所以Jython不仅给你提供了Python的库,同时也提供了所有的Java类。这使其有一个巨大的资源库。
— PYPY    python写的解释器,它的目标是执行速度。PyPy采用JIT技术,对Python代码进行动态编译(注意不是解释),所以可以显著提高Python代码的执行速度。
绝大部分Python代码都可以在PyPy下运行,但是PyPy和CPython有一些是不同的,这就导致相同的Python代码在两种解释器下执行可能会有不同的结果。如果你的代码要放到PyPy下执行,就需要了解PyPy和CPython的不同点。
— IronPython-- .net version
小结
Python的解释器很多,但使用最广泛的还是CPython。如果要和Java或.NET平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。
 
 

1.5 python变量和常量

a、标识符的第一个字符必须是字母表中的字母(大写或小写)或者一个下划线(‘_’)
b、标识符名称的其他部分可以由字母(大写或小写)、下划线(‘_’)或数字(0-9)组成。
c、标识符名称是对大小写敏感的。例如,myname和myName不是一个标识符。注意前者中的小写n和后者中的大写N。
d、有效标识符名称的例子有i、_my_name、name_23和a1b2_3。
f、无效标识符名称的例子有2things、this is spaced out和my-name。
大写的是常量
  所谓常量就是不能变的变量,比如常用的数学常数π就是一个常量。在Python中,通常用全部大写的变量名表示常量:
PI=3.14159265359
  但事实上PI不会被改变,所以,用全部大写的变量名表示常量只是一个习惯上的用法,如果你一定要改变变量PI的值,也没人能拦住你。
最后,理解变量在计算机内存中的表示也非常重要。当我们写:
a='ABC'
时,Python解释器干了两件事情:
1、在内存中创建一个'ABC'的字符串;
2、在内存中穿件另一个名为a的变量,并把它指向‘ABC’。
也可以把一个变量a赋值给另一个变量d,这个操作实际上是把变量b指向变量a所指向的数值,例如下面的代码:
a = 'ABC'
b = a
a = 'XYZ'
print b
最后一行打印出变量的内容到底是'ABC'还是'XYZ'?如果从数学意义上理解。就会错误地得出b和a相同,也应该是'XYZ',但实际上b的值是'ABC'

1.6 python注释

  当行注视:# 被注释内容

  多行注释:""" 被注释内容 """

 

1.7 python字符编码

ascii用1个字节(8位二进制)代表一个字符

unicode    utf-32 一个字符 占   4个字节  
unicode    utf-16   一个字符    占 2个字节  
utf-8    可变长的字符编码 一个英文占一个字节,一个中文占3个字节
编码时在前面加入
#_*_ coding:utf-8 _*_
 

1.8 python用户交互及格式化打印

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

name = input("name:")
age = int(input("age:"))
job = input("job:")
hobby = input("hobby:")

info = '''
---------  info of %s   -----------
name : %s
age  : %d
job  : %s
hobby: %s
--------------end--------------------
'''%(name,name,age,job,hobby)

print(info)

info2 = '''
---------- info3 of {_name}  --------------
name : {_name}
age  : {_age}
job  : {_job}
hobby: {_hobby}
'''.format(_name=name,_age=age,_job=job,_hobby=hobby)

print(info2)

info3 = '''
---------- info2 of {0}  --------------
name : {1}
age  : {2}
job  : {3}
hobby: {4}
'''
print(info3)

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

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

import getpass

# 将用户输入的内容赋值给 name 变量
pwd = getpass.getpass("请输入密码:")

# 打印输入的内容
print(pwd)

提示:getpass在pycharm里不兼容。

猜年龄

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

age_of_oldboy = 56
guess_age = int(input("guess age:"))
if guess_age == age_of_oldboy:
    print("yes,you got it")
elif guess_age > age_of_oldboy:
    print("think smaller!")
else:
    print("think bigger!")

while循环

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

age_of_oldboy = 56
count = 0
while count < 3 :
    guess_age = int(input("guess age:"))
    if guess_age == age_of_oldboy:
        print("yes,you got it")
        break
    elif guess_age > age_of_oldboy:
        print("think smaller!")
    else:
        print("think bigger!")
    count += 1
    if count == 3:
        guess_confirm = input("do you want keep playing? y/n:")
        if guess_confirm == 'n':
            count = 0
else:
    print("fuck")
 

for循环

#!/usr/bin/env python
# -*- coding: utf-8 -*-
for i in range(10):
    print("--------",i)
    for j in range(10):
        print(j)
        if j > 5:
            break
 
 
 

python基础一的更多相关文章

  1. python之最强王者(2)——python基础语法

    背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...

  2. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  3. Python小白的发展之路之Python基础(一)

    Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...

  4. Python之路3【第一篇】Python基础

    本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...

  5. 进击的Python【第三章】:Python基础(三)

    Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...

  6. 进击的Python【第二章】:Python基础(二)

    Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...

  7. Python之路【第一篇】python基础

    一.python开发 1.开发: 1)高级语言:python .Java .PHP. C#  Go ruby  c++  ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...

  8. python基础之day1

    Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...

  9. python基础之文件读写

    python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...

  10. python基础之编码问题

    python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...

随机推荐

  1. iTextSharp生成pdf的一个简单例子

    效果图: 参考:http://www.cnblogs.com/CareySon/archive/2011/11/09/2243496.html http://www.cnblogs.com/julyl ...

  2. jQuery动画效果animate和scrollTop结合使用实例

    CSS属性值是逐渐改变的,这样就可以创建动画效果.只有数字值可创建动画(比如 "margin:30px").字符串值无法创建动画(比如 "background-color ...

  3. 奇虎360诉腾讯QQ垄断案之我见(3Q大战之我见)

    这两款软件我都在用,要说时间最长感情最深的应该是腾讯QQ,1999年诞生的那年就在用QQ了! 不过感情归感情,个人看法归个人看法,不能用感情来判断. 正所谓外行看热闹,内行看门道.从事实上讲在使用这两 ...

  4. 【MVVM】模型认识理解,

     MVVM:模型-视图-视图模型(Model-View-ViewModel) 注意:它是双向绑定的 源:http://www.ruanyifeng.com/blog/2015/02/mvcmvp_mv ...

  5. python基础-牛逼的三层循环,实现想在那里退出,就在那里退出。

    #!/usr/bin/env python # -*- coding:utf-8 -*- #Author: nulige tag=True #设置tag控制他,只要一输入Flash就退出整个循环 wh ...

  6. 理解C# 4 dynamic(1) - var, object, dynamic的区别以及dynamic的使用

    阅读目录: 一. 为什么是它们三个 二. 能够任意赋值的原因 三. dynamic的用法 四. 使用dynamic的注意事项 一. 为什么是它们三个? 拿这三者比较的原因是它们在使用的时候非常相似.你 ...

  7. TortoiseGit的使用教程(转)

    1.windows安装TortoiseGit详细使用教程[基础篇] http://www.mamicode.com/info-detail-423481.html 2.Windows下Git与Tort ...

  8. ASP.NET Identity系列教程(目录)

    $(document).ready(function(){ $("#hide").click(function(){ $(".en").hide(); }); ...

  9. C#-WebForm-WebForm开发基础

    1.C/S 客户端应用程序 WinForm WPF 平级 数据是存放在其他的电脑上或服务器上 需要从服务器上下载相应的数据,在本地电脑上的客户端里进行加工 数据的加工是在用户的电脑上执行的,会对用户的 ...

  10. gulp同步执行任务

    使用插件:gulp-sync,npm install --save-dev gulp-sync 使用方法参考:https://www.npmjs.com/package/gulp-sync 这些插件也 ...