python

exit()

python test.py

输入输出

print('2\n2')
print(1, 2, 3) name = input()
print(':', name)

数据类型和变量

# 注释
print(1.23e9)
print('I\'m \"OK\"')
print(r'\\\t\\') # r''不转义
print('''line1
line2
line3''') # 多行 # True False
# and or not
print(True or False) # 空值 Node # 变量 # 常量
# 在Python中,通常用全部大写的变量名表示常量
PI = 3.14159265359
# 但事实上PI仍然是一个变量,Python根本没有任何机制保证PI不会被改变 # / // %
print('9/3', 9 / 3)
print('10//3', 10 // 3)
print('10%3', 10 % 3)

字符串和编码

#!/usr/bin/env python3
# -*- coding: utf-8 -*- #第一行注释是为了告诉Linux/OS X系统,这是一个Python可执行程序,Windows系统会忽略这个注释;
#第二行注释是为了告诉Python解释器,按照UTF-8编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码
#申明了UTF-8编码并不意味着你的.py文件就是UTF-8编码的,必须并且要确保文本编辑器正在使用UTF-8 without BOM编码 print("ord('A')", ord('A'))
print("ord('中')", ord('中'))
print("chr(66)", chr(66))
print("chr(25991)", chr(25991))
print("'\\u4e2d\\u6587'", '\u4e2d\u6587') print('ABC'.encode('ascii'))
print('中文'.encode('utf-8'))
print(b'ABC'.decode('ascii'))
print(b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8')) print(len('ABC'))
print(len('中文'))
print(len(b'ABC'))
print(len(b'\xe4\xb8\xad\xe6\x96\x87'))
print(len('中文'.encode('utf-8'))) #%d 整数
#%f 浮点数
#%s 字符串
#%x 十六进制整数 print('Age: %s. Gender: %s %%' % (25, True))

list

#list
classmates = ['Michael', 'Bob', 'Tracy']
print(classmates)
#个数
print(len(classmates))
#最后一个元素
print(classmates[-1])
#添加
classmates.append('Adam')
print(classmates)
#指定位置添加
classmates.insert(1, 'Jack')
print(classmates)
#删除末尾的元素
classmates.pop()
print(classmates)
#删除指定位置的元素
print(classmates.pop(1))
print(classmates)
#替换
classmates[1] = 'Sarah'
print(classmates)

tuple

#tuple
#因为tuple不可变,所以代码更安全。如果可能,能用tuple代替list就尽量用tuple
classmates = ('Michael', 'Bob', 'Tracy')
print(classmates[0]) #定义的不是tuple,是1这个数!这是因为括号()既可以表示tuple,又可以表示数学公式中的小括号,这就产生了歧义,
#因此,Python规定,这种情况下,按小括号进行计算,计算结果自然是1。
t = (1)
print(t)
t = (1,)
print(t)
t = (1, 2, ['a', 'b'])
print(t) #tuple所谓的“不变”是说,tuple的每个元素,指向永远不变。
#即指向'a',就不能改成指向'b',指向一个list,就不能改成指向其他对象,但指向的这个list本身是可变的
t[2][0] = 'x'
t[2][1] = 'y'
print(t)

循环

names = ['Michael', 'Bob', 'Tracy']
for name in names:
print(name) sum = 0
for x in [1, 2,3,4,5,6,7,8,9,10]:
sum = sum + x
print(sum) sum = 0
for x in range(101):
sum = sum + x
print(sum) sum = 0
n = 99
while n > 0:
sum = sum + n
n = n - 2
print(sum)

dict

d = {
'Michael': 95,
'Bob': 75,
'Tracy': 85
}
print(d['Michael']) #第二种方法是先在字典的索引表里(比如部首表)查这个字对应的页码,
#然后直接翻到该页,找到这个字。无论找哪个字,这种查找速度都非常快,不会随着字典大小的增加而变慢。
#dict就是第二种实现方式,给定一个名字,比如'Michael',dict在内部就可以直接计算出Michael对应的存放成绩的“页码”,
#也就是95这个数字存放的内存地址,直接取出来,所以速度非常快。 d['Adam'] = 67
print(d) print('Adam' in d) #如果key不存在,可以返回None,或者自己指定的value
print(d.get('Thomas'))
print(d.get('Thomas', -1)) #dict内部存放的顺序和key放入的顺序是没有关系的 #和list比较,dict有以下几个特点: #查找和插入的速度极快,不会随着key的增加而增加;
#需要占用大量的内存,内存浪费多。
#而list相反: #查找和插入的时间随着元素的增加而增加;
#占用空间小,浪费内存很少。

set

#set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key
#无序
#重复元素在set中自动被过滤
s = set([1,2,3,1,2])
print(s) s.add(4)
print(s) s.remove(1)
print(s) s1 = set([1, 2,3])
s2 = set([2,3,4])
#交集
print(s1 & s2)
#并集
print(s1 | s2) a = ['c', 'b', 'a']
a.sort()
print(a) a = 'abc'
b = a.replace('a', 'A')
print(b, a)

python20151125的更多相关文章

随机推荐

  1. Android图像处理2

    此次实验主要通过Android中的方法获取输入的颜色矩阵的值,更改后赋值给图片中的颜色矩阵更改图片效果.具体的布局的方法跟笔记1种差不多,只不过这里要添加一个供用户输入的GridView <Gr ...

  2. 关于Segmentation fault (core dumped)几个简单问题的整理

    有的程序可以通过编译,但在运行时会出现Segment fault(段错误).这通常都是指针错误引起的.但这不像编译错误一样会提示到文件一行,而是没有任何信息.一种办法是用gdb的step, 一步一步寻 ...

  3. win8安装python环境和pip & easy_install工具

    最近在学python,2.7.6的版本 首先安装python2.7 官网下载地址https://www.python.org/downloads/ 下载相应版本即可,应该是一个msi的文件,默认安装到 ...

  4. kappa 一致性系数计算实例

    kappa系数在遥感分类图像的精度评估方面有重要的应用,因此学会计算kappa系数是必要的 实例1 实例2

  5. Mysql grant权限管理

    MySQL 赋予用户权限命令的简单格式可概括为: grant 权限 on 数据库对象 to 用户 [identified by '密码'] 最常用的,弄主从同步的时候,给从库的slave用户设置拥有所 ...

  6. Oracle RAC集群安装之:Grid软件安装过程蓝屏

    前几天在安装一套RAC服务器的过程中,遇到了蓝屏事件,折腾了蛮久(在排查是否存在硬件问题上花费了相当多一部分时间),整个过程大概说明如下: 1.两台华为的PC SERVER,操作系统为WIN SERV ...

  7. 基于Ogre的DeferredShading(延迟渲染)的实现以及应用

    http://blog.sina.com.cn/s/blog_458f871201017i06.html 这篇文章写的不错,从比较宏观的角度说了下作者在OGRE中实现的延迟渲染

  8. bnu 4352 XsugarX的疯狂按键识别(暴力模拟)

    http://www.bnuoj.com/bnuoj/problem_show.php?pid=4352 [题意]:给你个长串,输出该长串中能第一放出的技能,每个技能有对应的一个小子串,不能放出任何技 ...

  9. csu 1303 Decimal (数论题)

    http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1303 1303: Decimal Time Limit: 1 Sec  Memory Limit: ...

  10. linux学习笔记(1)-文件处理相关命令

    列出文件和目录 ls (list) #ls 在终端里键入ls,并回车,就会列出当前目录的文件和目录,但是不包括隐藏文件和目录 #ls -a 列出当前目录的所有文件 #ls -al 列出当前目的所有文件 ...