python工具:pycharm配置以及使用
http://blog.csdn.net/hk2291976/article/details/51141868
一.python基础
1.数字运算符
2**3 指数 =8 22%8 取余 =6 22//8 整除 =2 22/8 除法 =2.75 3*5 乘法 =15
2.数据类型
整型 -2,0,3 浮点型 -3.5, 0.0, 8.9 字符串型 ‘qq', 'HELLO!', '11CAT'
3.字符串连接和复制
>>> 'Alice'+'Bob' 'AliceBob' >>> 'Alice'*3 'AliceAliceAlice'
4.变量名规则
不允许: 中划线 空格 数字开头 特殊字符$' python常用变量名: 小写字母开头
5.常用函数
>>> myname=input() #这里是注释:输入# liujiao >>> print('Nice to meet you, myname is ' + myname)#输出# Nice to meet you, myname is liujiao >>> spam=input() 100 >>> spam #输入为字符串# '100' >>> len('hello') #字符串长度# 5 >>> str(29)#整数转变为字符串# '29' >>> int('42')#字符串转变为整型# 42 >>> float('3')#整数转变为浮点数# 3.0 >>> int(7.7))#浮点数转变为整数# 7
二.控制流
1.布尔值,比较操作符
>>>#==和!=用于所有数据类型的比较# >>> 44==88 False >>> 'hello'=='Hello' False >>> 23==23.0 True >>> 23=='23.0' False >>> 2!=3 True >>> 'cat'!='dog' True
>>>#<和>和<=和>=用于整型和浮点型#
2.布尔操作符
>>> True and True True >>> True and False False >>> True or False True >>> False or False False
>>> not True
False
3.混合布尔和比较操作符
>>> (4<5) and (5<6) True
>>> (4<5) and (5<6) or (not 2+2==4)
True
4.if/elseif/else
>>> name = 'Bob' >>> age = 5 >>> if name =='Alice': print('Hi,Alice') elif age<12: print('hi') else: print('hello') hi
5.while/sys.exit
import sys while True: #当用于条件判断时,0,0.0,‘’(空字符串)被认为是False,其他值被认为是True print('Type exit to exit.') response = input() if response == 'your name': sys.exit() #退出程序 #break #退出循环 print('good job') print('end')
6.for/range()
for i in range(5): print('i is ' + str(i))
for i in range(10,13): print('i is ' + str(i))
for i in range(10,20,5): print('i is ' + str(i))
三.函数
1.print()
>>> spam = print('hello') hello >>> None == spam True >>> print('cat', 'dog','mice') cat dog mice >>> print('cat', 'dog','mice', sep=',') cat,dog,mice
>>> print('one two three' + \
... 'four five')
one two threefour five
2.try/catch
def spam(dividedBy): try: return 42/dividedBy except ZeroDivisionError: print('Error') print(spam(0)) print(spam(2)) #继续执行
输出 Error None 21.0
def spam(dividedBy): return 42/dividedBy try: print(spam(0)) print(spam(2)) #一旦执行到except语句,就无法返回 except ZeroDivisionError: print('Error') 输出 Error
四.列表
1.一维列表/二维列表/下标/切片
>>> spam=['cat','dog','rice'] >>> spam[0] 'cat' >>> spam[0:2] ['cat', 'dog'] >>> spam=[['cat','dog','rice'],[10,20,30]] >>> spam[1][2] 30
2.列表链接和复制
>>> [1,2,3]+['a','b','c'] [1, 2, 3, 'a', 'b', 'c'] >>> [1,2,3]*3 [1, 2, 3, 1, 2, 3, 1, 2, 3]
3.列表删除
>>> spam=['cat','dog','mice'] >>> del spam[2] >>> spam ['cat', 'dog']
4.in/not in操作符
>>> 'cat' in ['cat','dog'] True >>> 'mice' not in ['cat','dog'] True
5.多重赋值
>>> spam=['cat','dog','mice'] >>> cat,dog,mice=spam >>> cat 'cat' >>> dog 'dog' >>> mice 'mice'
6.列表的其他方法
>>> spam=['cat','dog','mice'] >>> spam.index('dog') 1 >>> spam.append('monkey') >>> spam ['cat', 'dog', 'mice', 'monkey'] >>> spam.insert(1,'chicken') >>> spam ['cat', 'chicken', 'dog', 'mice', 'monkey'] >>> spam.remove('monkey') >>> spam ['cat', 'chicken', 'dog', 'mice'] >>> spam.insert(1,'chicken') >>> spam ['cat', 'chicken', 'chicken', 'dog', 'mice'] >>> spam.remove('chicken') #只能删除第一次出现的chichen >>> spam ['cat', 'chicken', 'dog', 'mice'] >>> spam = [2,5,-9,8] >>> spam.sort() >>> spam [-9, 2, 5, 8] >>> spam.sort(reverse=True) >>> spam [8, 5, 2, -9]
6.字符串和元组
五.字典和结构化数据
1.字典的定义
>>> mycat={'size':'fat','color':'gray','disposition':'loud'} >>> mycat['size'] 'fat'
2.字典与列表
>>> spam=['cat','dog','mouse'] >>> bacon=['dog','cat','mouse'] >>> spam==bacon #列表是排序的 False >>> mycat={'size':'fat','color':'gray','disposition':'loud'} >>> hercat={'color':'gray','disposition':'loud','size':'fat'} >>> mycat==hercat #字典是不排序的 True
3.字典的用法
1)keys, values,items
>>> mycat={'size':'fat','color':'gray','disposition':'loud'} >>> for k in mycat.keys(): ... print(k) ... size color disposition >>> >>> >>> for v in mycat.values(): ... print(v) ... fat gray loud >>> for i in mycat.items(): ... print(i) ... ('size', 'fat') ('color', 'gray') ('disposition', 'loud')
>>> list(mycat.keys())
['size', 'color', 'disposition']
>>> for k,v in mycat.items():
... print('key:' + k + ',value:' + v)
...
key:size,value:fat
key:color,value:gray
key:disposition,value:loud
>>> 'fat' in mycat.values()
True
>>> 'color' in mycat.keys()
True
2)get(), setdefault()
>>> mycat.get('color', 'white') 'gray' >>> mycat.get('colors', 'white') 'white' >>> mycat.setdefault('width',8) 8 >>> mycat.setdefault('width',10) 8 >>> mycat {'size': 'fat', 'color': 'gray', 'disposition': 'loud', 'width': 8}
4.嵌套的字典和列表
allGuests = {'Alice': {'apples': 5, 'bananas':4}, 'Bob': {'sandwiches':3, 'apples':3}, 'Carol': {'cups':10, 'apple pies': 9}} def totalBrought(guests, item): numbrought = 0 for k,v in guests.items(): numbrought = numbrought + v.get(item, 0) return numbrought print('Apples ' + str(totalBrought(allGuests, 'apples'))) print('Cakes ' + str(totalBrought(allGuests, 'cakes'))) D:\liujiao\python3.6.0\python.exe D:/liujiao/pyCharm/test/test.py Apples 8 Cakes 0
六.字符串操作
1.处理字符串
>>> spam = 'This is Alice\'s cat' >>> spam "This is Alice's cat" >>> """This is test python program, ... written by liujiao""" 'This is test python program,\nwritten by liujiao' >>> spam[0] 'T' >>> spam[3:7] 's is'
>>> 'hello' in 'hello world'
True
>>> 'HELLO' in 'hello world'
False
2.有用的字符串方法
1)upper(), lower(),isupper(),islower()
>>> spam = 'Hello world' >>> spam = spam.lower() >>> spam 'hello world' >>> spam.upper() 'HELLO WORLD' >>> spam = 'Hello world' >>> spam.islower() False >>> 'abc1234'.islower() True >>> '123'.islower() False >>> '123'.isupper() False
2)isX
isalpha():字符串只包含字母,并且非空。则为true
isalnum():字符串只包含字母和数字,并且非空。则为true
isdecimal():字符串只包含数字字符,并且非空。则为true
isspace():字符串只包含空格,制表符和换行,并且非空。则为true
istitle():字符串只包含以大写字母开头,后面都是小写字母的单词。则为true
3)startswith(),endswith()
>>> 'hello world'.startswith('hello') True >>> 'hello world'.endswith('world') True
4)join(),split()
>>> ','.join(['cat', 'dog','mouse']) 'cat,dog,mouse' >>> >>> 'my name is liujiao'.split() ['my', 'name', 'is', 'liujiao'] >>> 'my name is liujiao'.split('m') ['', 'y na', 'e is liujiao']