pythoncamp0

写给六个月前的自己——Python

先了解一些Python 的基本知识

print——打印字符串

  • print ""

  • print ''

  • print """

    要打印的

    多行

    内容
    """ ——三引号可以用来打印多行内容。

  • print "",——逗号表示连接下一行 print,添加空格不换行。(可以用于使单行代码不超过80个字符)

  • print "" + ""——将两个冒号中的字符串连接打印,之间不添加空格。

      "字符串"也可以用变量名来代替。如:print a + b + c
    
  • print "." * 10——打印10个点。

  • print "\n"——用于换行,\n 后面的内容打印时另起一行。(new line)

  • print "\t"——用于缩进。

    也可以用 print "\n\t"换行并缩进。 
    

转移序列符(\)汇总 拓展学习

转义字符 ——功能

  • \(在行尾时) ——续行符

  • \\ ——反斜杠符号

  • \' ——单引号

  • \" ——双引号

  • \a ——响铃

  • \b ——退格(Backspace)

  • \e ——转义

  • \000 ——空

  • \n ——换行

  • \v ——纵向制表符

  • \t ——横向制表符

  • \r ——回车

  • \f ——换页

  • \oyy ——八进制数yy代表的字符,例如:\o12代表换行

  • \xyy ——十进制数yy代表的字符,例如:\x0a代表换行

  • \other—— 其它的字符以普通格式输出

input()和 raw_input()

使用input和raw_input都可以读取控制台的输入。

  • input( ) 函数会把你输入的东西当作 Python 代码进行处理,这么做会有安全问题,应该避开这个函数。

  • raw_input( ) 函数直接返回输入的内容,类型为字符串。

Help on built-in function rawinput in module _builtin:

raw_input(...) raw_input([prompt]) -> string

Read a string from standard input.  The trailing newline is stripped.
If the user hits EOF (Unix: Ctl-D, Windows: Ctl-Z+Return), raise EOFError.
On Unix, GNU readline is used if enabled.  The prompt string, if given, is printed without a trailing newline before reading.
用法示例(以 raw_input 为例)
  • 用法1

      print "how old are you?",
    
      age = raw_input()
    
      在命令行运行脚本,当脚本暂停时,在命令行输入年龄(age被赋值)。
    
  • 用法2

两者区别——input和raw_input在处理数字时是有区别的:
  • 纯数字输入

    当输入为纯数字时

    input返回的是数值类型,如 int,float

    raw_inpout返回的是字符串类型,string。

    • 数学表达式输入

      input 会计算输入的数字表达式,而 raw_input 不会。

      如输入“57 + 3”:

      input会得到整数 60

      raw_input会得到字符串“57 + 3”

参数、解包和变量

  • import 语句 —— 引入模块(module)

    可以理解为将 Python 的“特性”引入脚本的方法。

    from sys import argv
    
  • argv —— 参数变量(argument variable)

    保存着运行 python 脚本时将要传递给 python 脚本的参数。

    在命令行中这样调用脚本和参数
    python 脚本名.py 参数值1 参数值2 参数值3 ...
    
  • 解包 —— 将 argv 中的东西解包,把参数依次赋值给变量。

    script, first, second, third, ... = argv 
    

    以上分别是赋值给脚本名称(即调用该脚本),第一个变量名,第二个变量名,第三个变量名...以此类推。

  • 示例:

       from sys import argv
    
       script, first, second, third = argv 
    
     print "The script is called:",script

     print "Your first variable is:",first

     print "Your second variable is:",second

     print "Your third variable is: %s" % third 

      —— 第三个调用方式有所不同,但也是可以成功的,注意两者区别,并想想它的原理。

     在命令行中输入 python exl.py one tow three 运行脚本。
  • 将参数和变量名替代为有意义的字符串,就可以应用于编程中了。

int()定义整数

  • 如:3,4,23,987

float()定义浮点数

  • 如:3.0,3.1415926,0.3333

str()转为字符串

  • 如:str(234) print str 显示234

运算符

  • 加 +

  • 减 -

  • 乘 *

  • 除取整 /

  • 除取余 %

  • 优先级:

     ()  *  /  %  +  -
    

Boolean

  • 返回的两个值为 True(T), False(F)

  • Logic

     NOT AND OR 
    
     优先级为 () NOT AND OR
    
  • 比较运算符

        大于 > 
        小于 < 
        大于等于 >= 
        小于等于 <= 
        等于 ==    (这里注意和单等号“=”区分,=是将右边赋值给左边。==是判断左右是否相等,得到一个逻辑值,Ture 或 False)
        不等于 !=
    

Python 格式化字符串 拓展学习

用法示例
  • print("I'm %s. I'm %d year old." % ('Vamei', 99)

      打印结果:I'm Vamei.I'm 99 year old.
    
  • a = "I'm %s. I'm %d year old" % ('Vamei', 99)

    print a

      打印结果:I'm Vamei.I'm 99 year old.  
    
  • print("I'm %(name)s. I'm %(age)d year old" % ({'name':'Vamei', 'age':99})

      对两个格式符进行了命名。命名使用()括起来。每个命名对应词典的一个key。
    
      得到相同的结果:I'm Vamei.I'm 99 year old.
    
  • b = False
    a = "Isn't that joke so funny?! %r"
    print a % b

     打印结果:Isn't that joke so funny?! False  
    
格式化字符——转换方式

  • %r——显示变量的原始数据(用来 debug 比较好,因为 %r 显示任何东西的原始表示)

  • %c——转换成字符(ASCII 码值,或者长度为一的字符串)

  • %ra——优先用 repr()函数进行字符串转换

  • %s——优先用 str()函数进行字符串转换

  • %d / %i——转成有符号十进制数

  • %ub——转成无符号十进制数

  • %ob——转成无符号八进制数

  • %xb/%Xb——(Unsigned)转成无符号十六进制数(x/X 代表转换后的十六进制字符的大小写)

  • %e/%E——转成科学计数法(e/E 控制输出 e/E)

  • %f/%F——转成浮点数(小数部分自然截断)

  • %g/%G——%e 和%f/%E 和%F 的简写

  • %%——输出%

SimpleGUI

Frame

建一个button