1. Python介绍:

发明者:Guido

应用范围:网络应用、科学运算、GUI程序、系统管理工具、其他程序

优势:简单易懂、开发效率高、高级语言、可移植性、可扩展性、可嵌入性。

缺点:速度慢,代码不能加密,线程不能利用多CPU问题。

2. "Hello World"

创建一个文件名为,myFirstPyProgram.py

vi myFirstPyProgram.py

#!/usr/bin/env python

print “Hello,World!”

print “Goodbye,World!”

保存后执行:

$  python myFirstPyProgram.py

Hello,World!

Goodbye, World!

3.数据类型

一个程序要运行,就要先描述其算法。描述一个算法应先说明算法中要用的数据,数据以变量或常量的形式来描述。每个变量或常量都有数据类型。Python的基本数据类型有5种: 整型(int), 浮点型(float), 字符型(string), 布尔型(bool),空值(None).

-整数

Python可处理任意大小的整数,在程序中的表示方法和数学上的写法完全一样。

-浮点数

浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23x109和12.3x108是相等的。浮点数可以用数学写法,如1.233.14-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23x109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。

整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运算则可能会有四舍五入的误差。

-字符串

字符串是以''或""括起来的任意文本,比如'abc'"xyz"等等。请注意,''或""本身只是一种表示方式,不是字符串的一部分,因此,字符串'abc'只有abc这3个字符。如果'本身也是一个字符,那就可以用""括起来,比如"I'm OK"包含的字符是I'm,空格,OK这6个字符。

-布尔值

布尔值和布尔代数的表示完全一致,一个布尔值只有TrueFalse两种值,要么是True,要么是False,在Python中,可以直接用TrueFalse表示布尔值(请注意大小写),也可以通过布尔运算计算出来。

-空值

空值是Python里一个特殊的值,用None表示。None不能理解为0,因为0是有意义的,而None是一个特殊的空值。

算术运算

以下例子a = 10 , b= 20

运算符

描述

示例

+

加法运算

a + b 得 30

-

减法运算

a - b 得 -10

*

乘法运算

a * b 得 200

/

除法运算

b / a 得 2

%

取模 - 将%号左边的值除以%号右边的值并且将得到的结果的余数返回

10%5得0 ,10%3 得1, 20%7 得6

**

幂 - 返回x的y次幂,就是返回多少次方

2**8 得256

//

取整除 - 返回x除以y的商的整数部分

9//2得4 , 9.0//2.0得4.0

比较运算

以下例子a = 10 , b= 20

运算符

描述

示例

==

判断两个对象是否相等

(a == b) is not true.

!=

判断两个对象是否不相等

(a != b) is true.

<>

判断两个对象是否不相等

(a <> b) is true. 与 != 运算符一样.

>

大于 - 返回a是否大于b

(a > b) is not true.

<

小于 - 返回a是否小于b

(a < b) is true.

>=

大于等于 - 返回a 是否大于等于b

(a >= b) is not true.

<=

小于等于 - 返回a 是否小于等于b

(a <= b) is true.

 

赋值运算

运算符

描述

示例

=

赋值 - 将右边的值赋值给左边的变量名

c = a + b 将会把a+b的结果赋值给c

+=

自加赋值 - 将+=号左边的值与+=号右边的值相加,然后再把结果赋值给+=号左右的值

c += a相当于 c = c + a

-=

自减赋值

c -= a相当于 c = c - a

*=

自乘赋值

c *= a 相当于 c = c * a

/=

自除赋值

c /= a 相当于 c = c / a

%=

自取模赋值

c %= a 相当于 c = c % a

**=

自求幂赋值

c **= a 相当于 c = c ** a

//=

自取整赋值

c //= a 相当于 c = c // a

4. 变量与常量

name = "Mo"

name2 = name

print(name,name2)

name = 'MS'
print(name,name2)

分析:

  1. .  定义 name=”Mo”,解释器创建了字符串”Mo”和变量 name,并把 name 指向了”Mo”

  2. 执行 name2=name,解释器创建了 name2 变量,并把 name2 指向了 name 变量所指向

    的字符串

  3. 这时通过 id 内置函数来查看一下这两个变量分别指向的内存地址,结果都是指向了同 一地址。

  4. 执行 name=”MS”,解释器创建一个新的变量,并把 name 的指向改成了”MS”

  5. 此时再查看两个变量的内存地址指向就会发现,name 的指向已经变成了一个新的地址,

    也就是”MS”所在内存地址,但是 name2 依然还是指向原来的”Mo”。

 

5. 循环以及条件判断-If else/If elif else/for

登陆接口:输入用户名密码 ,都正确打印欢迎信息,未满足都正确的条件则打印失败通知。

user = 'monica'
passwd= 'mocha'

username = input("username:")
password = input("password:")

if user == username and passwd == password:
    print("Welcome login")
else:
   print("Invalid username or password..")

For循环+条件判断-猜年龄: 三次以内猜对退出循环;猜数字高了或者低了会给提醒(用if,elif,else), 第三次询问是否继续,是则继续循环,不继续则退出循环(if,else)。 

age = 22
counter = 0
for i in range(10):
    print('-->counter:',counter)
    if counter <3:
        guess_num = int( input("input your guess num:") )
        if guess_num == age :
            print("Congratulations! you got it.")
            break #不往后走了,跳出整 个loop
        elif guess_num >age:
            print("Think smaller!")
        else:
            print("Think larger...")
    else:
        continue_confirm = input("Do you want to continue because you are stupid:")
        if continue_confirm == 'y':
            counter = 0
            continue
        else:
            print("bye")
            break

counter += 1 #counter = counter + 1

6. 制作个人信息表(%s)

name = input("input your name:")
age = int(input("input your age:") ) #convert str to int
job = input("input your job:")

msg = '''
Infomation of user %s:
---------------
Name: %s
Age : %s
Job : %s
-------End-----
''' % (name,name,age,job )
print(msg)

7. 关于取得密码,写文件、模块

getpass: Prompt the user for a password without echoing:

import getpass
username = input("username:")
password = getpass.getpass("password:")
print(username,password)

os: This module provides a portable way of using operating system dependent functionality.

import os

os.system('df')

os.mkdir('yourDir')
cmd_res = os.popen("df -h").read()

sys: This module provides access to some variables used or maintained by the interpreter and to functions that interact strongly with the interpreter.

import sys
print(sys.path)
#'/usr/lib/python2.7/dist-packages' 自己写的模块

Python笔记总结week1的更多相关文章

  1. Python笔记之不可不练

    如果您已经有了一定的Python编程基础,那么本文就是为您的编程能力锦上添花,如果您刚刚开始对Python有一点点兴趣,不怕,Python的重点基础知识已经总结在博文<Python笔记之不可不知 ...

  2. boost.python笔记

    boost.python笔记 标签: boost.python,python, C++ 简介 Boost.python是什么? 它是boost库的一部分,随boost一起安装,用来实现C++和Pyth ...

  3. 20.Python笔记之SqlAlchemy使用

    Date:2016-03-27 Title:20.Python笔记之SqlAlchemy使用 Tags:python Category:Python 作者:刘耀 博客:www.liuyao.me 一. ...

  4. Python笔记——类定义

    Python笔记——类定义 一.类定义: class <类名>: <语句> 类实例化后,可以使用其属性,实际上,创建一个类之后,可以通过类名访问其属性 如果直接使用类名修改其属 ...

  5. 13.python笔记之pyyaml模块

    Date:2016-03-25 Title:13.Python笔记之Pyymal模块使用 Tags:Python Category:Python 博客地址:www.liuyao.me 作者:刘耀 YA ...

  6. 8.python笔记之面向对象基础

    title: 8.Python笔记之面向对象基础 date: 2016-02-21 15:10:35 tags: Python categories: Python --- 面向对象思维导图 (来自1 ...

  7. python笔记 - day8

    python笔记 - day8 参考: http://www.cnblogs.com/wupeiqi/p/4766801.html http://www.cnblogs.com/wupeiqi/art ...

  8. python笔记 - day7-1 之面向对象编程

    python笔记 - day7-1 之面向对象编程 什么时候用面向对象: 多个函数的参数相同: 当某一些函数具有相同参数时,可以使用面向对象的方式,将参数值一次性的封装到对象,以后去对象中取值即可: ...

  9. python笔记 - day7

    python笔记 - day7 参考: http://www.cnblogs.com/wupeiqi/articles/5501365.html 面向对象,初级篇: http://www.cnblog ...

随机推荐

  1. Nodejs基础中间件

    Nodejs基础中间件Connect   http://www.tuicool.com/articles/emeuie 关于作者 张丹(Conan), 程序员Java,R,PHP,Javascript ...

  2. cmp函数

    cmp(x,y),既可以比较数字大小,也可以比较字符串.如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1. 数字的比较 >>> ...

  3. Mac > 编写跨平台桌面应用开发工具,基于 Web 技术

    Electron: The Electron framework lets you write cross-platform desktop applications using JavaScript ...

  4. .dtsi .dts dtc dtb 是什么

    基础 .dts: device tree source .dtsi:   device tree source include .dts比作源文件,.dtsi比作头文件. dtc是linux源码 /s ...

  5. HQL查询——聚集函数

    HQL查询--聚集函数 HQL也支持在选出的属性上使用聚集函数.HQL支持的聚集函数与SQL的完全相同: (1)avg:计算属性平均值: (2)count:统计选择对象的数量: (3)max:统计属性 ...

  6. Go语言执行系统命令行命令(转)

    package main import ( "os" "os/exec" "fmt" "flag" "stri ...

  7. SQL(oracle) 取得分组后最大值记录

    方法一 select t1.a,t1.b,t1.c from test t1 inner join (seelct a,max(b) as b from test group by a) t2 on  ...

  8. 简述jpg。Gif。png-8.png-24的区别,分别使用场景

    gif.jpg.png格式的图片在网站制作中的区别 一.Gif格式特点: 1.透明性,Gif是一种布尔透明类型,既它可以是全透明,也可以是全不透明,但是它并没有半透明(alpha透明). 2.动画,G ...

  9. 2.ReactNative Properties|States|Styles 笔记

    原文地址:http://reactnative.cn/docs/0.31/props.html#content 1. property: 如下代码所示 import React, { Componen ...

  10. .zip版初次安装mysql时遇到的my.ini、服务无法启动以及设置登录密码的问题

    下载mysql出现的问题 若下载的是.zip版,就是免安装的直接解压就可以的出现的问题 一.需要在E:\mysql\mysql-5.7.14-winx64目录下手动添加my.ini文件(.ini文件是 ...