码迷,mamicode.com
首页 > 编程语言 > 详细

Python 整理一

时间:2016-01-13 17:34:12      阅读:259      评论:0      收藏:0      [点我收藏+]

标签:

---恢复内容开始---

Python (pailen)最近学习这个语言,其实早在几年前学习perl的时候就知道有这个语言了,在讲perl的那本书后面就推荐学习python,并且还附加了二章的入门。当时初看了一下,发现和perl很相似。

这几天学了python的一些基本东西,整理一下。如下 :

#!/usr/bin/python
‘‘‘
    3.XX版后,默认是UTF-8,支持中文了.
‘‘‘
#coding=utf-8

‘‘‘这是注释,和Perl一样可以使用#号注释单行,但是多行注释是使用3个单引号‘‘‘

print("1. Mirror,python的Helloworld程序.");
print();

print("2. ‘‘‘这是注释,和Perl一样可以使用#号注释单行,但是多行注释是使用3个单引号‘‘‘");
print();

print("3. Hello World!");
print();

print("4. 你好,世界!");
print();

print("5. python版本:3.xx");
print();

print("6.变量命名");
a,b,c=1,"Mirror",1.13;
print("a,b,c=1,\"Mirror\",1.17; #直接指定并赋值,无须显示声明,类型自动判断.与perl相似");
print("打印出值");
print();
print("a=",a);
print("b=",b);
print("c=",c);

print();
print("7.取字符串的子串");
print("str=my name is mirrortom.这开始是特殊字符~!@#$%^&*()_+|?/\\");
print("例一:取出name子串.str[3:8],下标3(含)到下标8(不含)");
str=my name is mirrortom.这开始是特殊字符~!@#$%^&*()_+|?/\\;
print(str[3:8]);
print("新颖的例二:将字符串输出两次 str * 2");
print(str * 2);

print();
print("8.使用del语句删除变量引用,这怎么类似C语言的内存释放?");
print("-1.name = ‘mirror‘;sex=0;","\n-2.del name,sex","\n-3.print(name,sex)");
print("NameError: name ‘name‘ is not defined",第3行:会报错误,变量没有定义);

print();
print("9.列表,python的列表使用[]",感觉这类似于数组加散列,和perl差不多.);
list=[1str,2,3str,mirrortom];
print (list);
print (list[0]);
print (list[1]);
print (list[2]);
print (list[3]);
print("如果执行:print (list[4])",list index out of range,类似下标出界的错误);

print();
print("9.元组:tuple [t^pl] 这个太奇怪了,相当于只读列表,认为和玫举性质差不多.我顾名思义,就是元数据的列表,而元数据一般是不能修改的");
print("示例:data=(‘1str‘,2,‘3str‘,‘mirrortom‘)");
tupledata=(1str,2,3str,mirrortom)
print(tupledata);
print(tupledata[0]);
print(tupledata[1]);
print(tupledata[2]);
print(tupledata[3]);
print(tupledata*2);

print();
print("10.字典 dictionary,这个好理解,键值对.在形式上和json一样的.");
print("例 : dict={‘name‘:‘mirror‘,‘sex‘:‘男‘}\n print(dict)");
dict={name:mirror,sex:};
print (dict);
print(dict[name]);
print("print(dict[‘name‘]);")
print(dict[name]);

print();
print("11.数据类型转换");
print("将数据类型名作为函数名,要转换的值作为参数");
print("例:转为整数 int(a) 转为长整数long(a):3.xx版本后已经没有long了,统一使用int");
print("a=‘1‘;print(int(a));print(float(a));");
a="1";
print(int(a));
print(float(a));
print("将字符转为它的整数:a=‘a‘;print(ord(a));");
a=a;
print(ord(a));

print();
print("12.运算符 // 两个斜线表示取整除.这个不同于其它语言,");
print("例如:19//3");
print(19//3);
print("除:19/3.其它语言的除等同于//");
print(19/3);
print("取模(除法的余数):19%3");
print(19%3);

print();
print("13.比较运算符.和其它语言一样.就是这些");
print("== != <> > < <= >=",其中<>这个在3.XX版本中已经没有了.);

print();
print("14.赋值运算符.和其它语言一样");
print("= += -= *= /= %= **= //=");
print("例:a,b=3,4;a+=b;print(a);a//=b;print(a)");
a,b=3,4;
a+=b;
print(a);
a//=b;
print(a);

print();
print("15.位运算符.& | ^ ~ 与 或 异或 取反 << >>左右移位.");
print("都是对二进制数位的操作.和其它语言一样.");

print();
print("16.逻辑运算符 and or not  与 或非");
print("a,b=3,5;print(a and b);print(a or b);print(not not b);");
a,b=3,5;
print(a and b);
print(a or b);
print(not not b);

print();
print("17.成员运算符 in not in这不就是SQL语句中的吗.python也支持.呵呵.");

print();
print("18.身份运算符 is  is not 用于判断两个标识符是否引用同一个对象.");
print("例:a=b=1;print(a is b);\nc=d=‘mirror‘;print(c is d)\na=1;b=‘1‘;print(a is b);\nc=‘mirror‘;d=‘mirror‘");
a=b=1;
c=d=mirror;
print(a is b);
print(c is d);
a=1;b=1;
print(a is b);
c=mirror;d=mirror;
print(c is d);
print("还有个这样的函数,获得一串数字,感觉像C#的对象哈希码.print(id(a));");
print(id(a));
print("请看这些码 print(id(1));print(id(‘mirror‘));print(id(a));常量有相应表示方式");
print(id(1));print(id(mirror));print(id(a));

print();
print("19.if 语句.没有使用花括号作为语句块边界,在if表达式之后使用冒号结束.之后为语句块,语句块以缩进来区分.这比较奇葩.");
print("例:下面if之后两个语句,如果缩进相同,则视为同一语句块,就是说条件成立这两句都执行\nif 0==1:\n\tprint(‘0==1‘);\n\tprint(‘false‘)");

if 0!=1:
    print (0!=1);
    print(false);
print("如果缩进不同,就认为不是一个块里的,请看");
print("if 0==1:\n\tprint(‘0==1‘)\nprint(‘true‘);"); 
if 0==1:
    print (0==1);
print(true #这里输出了第二个print,但是条件并不成立.说明它不属于IF语句块中的);
print("如果表达式和语句块都很简单,只有一句,可以这样写\nif(1==1):print(‘true‘);");
if(1==1):print(true #python还没有switch语句,可以使用if xx: elif xx:);

print();
print("20.循环.终于到循环了,有for 和 while 没有 do while.");
print("i=1;\nwhile i==1:\n\ti+=1;\n\tprint(i);");
i=1;
while i==1:
    i+=1;
    print (i,#结果输出2);
print("continue break 这两个用于跳过当次循环和退出循环.和其它一样没什么说的");
print("这个比较有新意,else之后的语句什么时候执行?当循环正常结束时执行\nwhile xx: \n\t.....;\n\t.....;\nelse:\n\t正常执行完循环会执行else后面的语句块;");
print(正常执行完循环后会执行else后面的语句块,不正常执行完呢,就是使用了break跳出循环后,将不会执行else);

print();
print("for循环:没有经典的写法只有和foreach一样的写法: \nfor var in (‘1‘,‘2‘):\n\tprint(var)");
for i in (1,2):
    print(i);

print();
print("21.pass 语句.这个有什么用处?\n如果语句块没有内容则可以用这句话占个位置.例:\nif 1==1:\n\tpass #不做任何事.");
if 1==1:
    pass
print("如果不写的话,空着行不行呢.不行了.因为python的语句块使用缩进区分,如什么都不写的话,就区分不了语句块了.")
print(":(个人觉得这是没事找事,想少写大括号,又多引入pass解决代码块区分问题.最后还是没省多少事.");

print();
print(22.随机数.介绍一个函数randrange(0,5,1);三个参数是起点终点步长.\n\t说明:无法直接使用该函数,因为它属于一个类random的静态方法,用来需要引入random类 import random);
print("import random;\nprint(random.randrange(0,5));取起不取终");
import random;
print(random.randrange(0,5,1));
import math;
print(import math;\nmath.pi    #,math.pi);
print(math.e   #,math.e);

print();
print(23.转义字符);
print(\\ 如果在源码的行尾打一个,表示该行没完,延续到下一行.\n\\a这个可以让系统发出一个声音);
print("r‘\\n‘",在转义前面加一个r,表示不转义,直接输出原字符串.);
print(r\\);

print();
print(24.格式化输出,下面这个东西看起来原始多了.%(name)s这句话分三部分:%是符号,name是点位名,s表示是字符串.);
print("print (\"my name is %(name)s programAge %(pa)d years.\" %{‘name‘:‘mirror‘,‘pa‘:3}) ;");
print ("my name is %(name)s programAge %(pa)d years." %{"name":mirror,"pa":3}) ;

print(":)还好3.XX版本有类似C#的string.format.那就是str.format().再试试上面那句");
print("print(\"my name is {0} programAge {1}.\".format(‘mirror‘,3));")
print("能指定占位名,不过用数字不更好吗.print(\"my name is {name} programAge {pa}.\".format(name=‘mirror‘,pa=3));");
print("my name is {0} programAge {1}.".format(mirror,3));
print("my name is {name} programAge {pa}.".format(name=mirror,pa=3));

print();
print("以上是基础的语法,另外就是面向对象了.这个在下一篇里弄");

 

Python 整理一

标签:

原文地址:http://www.cnblogs.com/mirrortom/p/5127590.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!