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. Pandas简易入门(二)

    目录:     处理缺失数据     制作透视图     删除含空数据的行和列     多行索引     使用apply函数   本节主要介绍如何处理缺失的数据,可以参考原文:https://www. ...

  2. Django设置

    运行 django-admin.py startproject [project-name] 命令会生成一系列文件,在Django 1.6版本以后的 settings.py 文件中有以下语句: # B ...

  3. .NET平台一些概念

    1.什么是CLR CLR(Common Language Runtime)公共语言远行时,是一个可由多种编程语言使用的“远行时”.CLR的核心功能(比如内存管理.程序集加载.安全性.异常处理和线程同步 ...

  4. WPF Button的背景图片设置

    这个问题很简单,但是对于从winfrom转过来的来讲,在做事的时候就会被绕进去,言归正传,如何设置一个bUtton的背景图片?如何去掉让人烦的默认选中时的灰色背景?请看如下的描述.问题的来源和解决都在 ...

  5. Ext Grid 加载超时设置timeout: 180000

    var insideGridStore = Ext.create('Ext.data.Store', { model: 'CarComponents',//这个地方CarComponents不是一个对 ...

  6. 【BZOJ 1911】 [Apio2010]特别行动队

    Description Input Output Sample Input 4 -1 10 -20 2 2 3 4 Sample Output 9 HINT   转移方程 f[i]=max(f[j]+ ...

  7. 【BZOJ 1054】 [HAOI2008]移动玩具

    Description 在一个4*4的方框内摆放了若干个相同的玩具,某人想将这些玩具重新摆放成为他心中理想的状态,规定移动时只能将玩具向上下左右四个方向移动,并且移动的位置不能有玩具,请你用最少的移动 ...

  8. WebUploader API

    Uploader new Uploader( opts ) ⇒ Uploader 上传入口类. var uploader = WebUploader.Uploader({ swf: 'path_of_ ...

  9. git/ TortoiseGit 在bitbucket.org 使用证书登陆

    背景:使用https协议在bitbucket中进行pull,push 时每次都要输入密码,比较麻烦还耽误时间,在网上找了下保存密码的方式 使用在用户环境变量中配置_netrc 文件的方式(http:/ ...

  10. python 中的列表解析和生成表达式 - 转

    优雅.清晰和务实都是python的核心价值观,如果想通过操作和处理一个序列(或其他的可迭代对象)来创建一个新的列表时可以使用列表解析(  List comprehensions)和生成表达式,通过这两 ...