区分大小写。尽量用字母或下划线开头,不要用数字开头。不要在中间加‘.’
赋值语句从右到左。按符号优先级走。
圆括号>指数操作>除,取余,乘法>加减
其他类比c。除了**,是平方的意思。
一切数据皆对象.对象包括方法。
一切变量都是对数据对象的一个引用,并没有存数据
python内部引用计数。sys.getrefcount(数据)。结合现象
不负责任地说,python的一切变量皆指针
int
string
list列表
tuple元组
dict字典
前三个不可变,后三个可变
表观现象即改变变量值,其对应的id值是否改变(id(变量名)来查看变量id)
不可变,如string[1] = “a”不可以,但list[1] = “a”就可以。
如果直接len(字符串),输出ascii码长度。一个中文长度为3。如果转换成正常长度,有以下两种方法:
a = "哈哈" print len(a) #方法一 a = u"哈哈" print len(a) #方法二 g = a.decode('utf-8') print len(g)
#coding=utf-8
#转义前 print "2333"" #转义后 #方法一 print "2333\"" #方法二 print r"2333""
在要转义的字符前面加\反斜杠,或者直接在前面加r。
规定输出范围:
a = "abcde" a[x:z] #输出从x到z项的数据 a[-3:] #输出最后3项 a[:-3] #输出除最后三项之外的字母
替换字符串:
#用replace函数,具体见help。 A = "abcdeb" A.replace("b","a",1); #用a替换A中的"b"字符串。并且只替换一次。 #用完如果想改变原先字符串的值,一定要重新赋值 #输出结果:aacdeb
拼接字符串:
不要直接相加,因为这样浪费空间
#可选的方法: b = "im %s haha" % "ringo" print b #输出结果:im ringo haha b = "im %s and i LOVE %s" % ("ringo","coding") print b im ringo and i LOVE coding #%s,%d是占位符。数字可以强转字符,反之不能。 #还可以这样,用format "im {who} and i LOVE {what}".format(who = "ringo",what = "coding") #'im ringo and i LOVE coding'
#优秀方法: #用join。"STRING".join(iterable) #此中的iterable指可迭代,比如串,list都可迭代。结果直接用STRING隔开 a = "i" b = "love" c = "python" join([a,b,c]) "".join([a,b,c]) #'ilovepython' " ".join([a,b,c]) #'i love python'
查找子串:
a = "hello world" num = a.find(world) #返回值是该子串在a中的下标值。失败return -1 a[num:] #输出num后的串 #help(a.find)
d = open("a.txt","w"); #有rwa三种,参照c语言 d.write("hi.\nhi again") d.close() #open之后必须close print d.readline() #>>hi print d.readline() #>> hi again print d.read(100) #>> #(empty) d.seek(0) #把文件指针移到开头 print d.read(100) #hi #second hi
""" @我是多行注释 @这是第一行 @这是第二行 """