Python 简单笔记

1、Python是大小写敏感的语言。定义Str与str是两个不同变量。

 

2、使用变量时只需要给它们赋一个值。不需要声明或定义数据类型。

# FileName : var.py i = 5 print(i) i = i+1 print(i) s = '''This is a multi-line string. This is the second line.''' print(s)

 

3、Python中程序不建议使用;结尾。一个;结尾说明一个逻辑行结束,当一个物理行只有一个逻辑行语句时,;是不需要的。Python建议程序一个物理行对应一个逻辑行,这样可以增加代码的可读性。

 

4、对于一般的简单语句,PyThon不允许以空格开始。这样会导致一个语法错误。

 

5、运算符与它们的用法

运算符 名称 说明 例子
+ 两个对象相加 3 + 5得到8。'a' + 'b'得到'ab'。
- 得到负数或是一个数减去另一个数 -5.2得到一个负数。50 - 24得到26。
* 两个数相乘或是返回一个被重复若干次的字符串 2 * 3得到6。'la' * 3得到'lalala'。
**

返回x的y次幂

3 ** 4得到81(即3 * 3 * 3 * 3)
/ x除以y 4/3得到1(整数的除法得到整数结果)。4.0/3或4/3.0得到1.3333333333333333
// 取整除 返回商的整数部分 4 // 3.0得到1.0
% 取模 返回除法的余数 8%3得到2。-25.5%2.25得到1.5
<< 左移 把一个数的比特向左移一定数目(每个数在内存中都表示为比特或二进制数字,即0和1) 2 << 2得到8。——2按比特表示为10
>> 右移 把一个数的比特向右移一定数目 11 >> 1得到5。——11按比特表示为1011,向右移动1比特后得到101,即十进制的5。
& 按位与 数的按位与 5 & 3得到1。
| 按位或 数的按位或 5 | 3得到7。
^ 按位异或 数的按位异或 5 ^ 3得到6
~ 按位翻转 x的按位翻转是-(x+1) ~5得到6。
< 小于 返回x是否小于y。所有比较运算符返回1表示真,返回0表示假。这分别与特殊的变量True和False等价。注意,这些变量名的大写。 5 < 3返回0(即False)而3 < 5返回1(即True)。比较可以被任意连接:3 < 5 < 7返回True。
> 大于 返回x是否大于y 5 > 3返回True。如果两个操作数都是数字,它们首先被转换为一个共同的类型。否则,它总是返回False。
<= 小于等于 返回x是否小于等于y x = 3; y = 6; x <= y返回True。
>= 大于等于 返回x是否大于等于y x = 4; y = 3; x >= y返回True。
== 等于 比较对象是否相等 x = 2; y = 2; x == y返回True。x = 'str'; y = 'stR'; x == y返回False。x = 'str'; y = 'str'; x == y返回True。
!= 不等于 比较两个对象是否不相等 x = 2; y = 3; x != y返回True。
not 布尔“非” 如果x为True,返回False。如果x为False,它返回True。 x = True; not y返回False。
and 布尔“与” 如果x为False,x and y返回False,否则它返回y的计算值。 x = False; y = True; x and y,由于x是False,返回False。在这里,Python不会计算y,因为它知道这个表达式的值肯定是False(因为x是False)。这个现象称为短路计算。
or 布尔“或” 如果x是True,它返回True,否则它返回y的计算值。 x = True; y = False; x or y返回True。短路计算在这里也适用。

 

6、在Python中没有switch 语句。你可以使用if..elif..else 语句来完成同样的工作。

number = 25 guess = int(input('Enter an integer : ')) if guess == number: print('Congratulations, you guessed it.') # New block starts here print('but you do not win any prizes!') # New block ends here elif guess < number: print('No, it is a little higher than that') # Another block # You can do whatever you want in a block ... else: print('No, it is a little lower than that') # you must habe guess > number to reach hear print('Done')

 

7、while 语句

# FileName: while.py number = 25 running = True while running: guess = int(input('Enter an integer : ')) if guess == number: print('Congratulations, you guessed it.') running = False elif guess < number: print('No, it is a little higher than that') else: print('No, it is a little lower than that') else: print('The while loop is over.') print('Down')

 

8、for语句,相比C++中的for循环,可以增加一个可选的else语句。循环正常结束时,都将执行else语句。

# FileName: for.py for i in range(0,5): print(i) else: print('The for loopp is over')

 

9、一个重要的注释是,如果你从forwhile 循环中 终止 ,任何对应的循环else 块将 执行。使用关键字break可以做到该点。

 

10、在函数的第一个逻辑行的字符串是这个函数的 文档字符串 。注意,DocStrings也适用于模块 和类。

文档字符串的惯例是一个多行字符串,它的首行以大写字母开始,句号结尾。第二行是空行,从第三行开始是详细的描述。 强烈建议 你在你的函数中使用文档字符串时遵循这个惯例。

 

你可以使用__doc__ (注意双下划线)调用printMax 函数的文档字符串属性(属于函数的名称)。请记住Python把 每一样东西 都作为对象,包括这个函数。我们会在后面的类 一章学习更多关于对象的知识。

 

如果你已经在Python中使用过help() ,那么你已经看到过DocStings的使用了!它所做的只是抓取函数的__doc__ 属性,然后整洁地展示给你。你可以对上面这个函数尝试一下——只是在你的程序中包括help(printMax) 。记住按q 退出help

 

11、列表list的使用代码

# FileName: using_list.py # This is my shopping list shoplist = ['apple','mango','carrot','banana'] print('I have',len(shoplist),'items to puchase.') print('These items are:') for item in shoplist: print(item) print('/nI alse have to bur rice.') shoplist.append('rice') print('My shopping list is now',shoplist) print('I will sort the list now') shoplist.sort() print('Sorted shopping list is',shoplist) print('The first item i will buy is',shoplist) olditem = shoplist[0] del shoplist[0] print('I bought the',olditem) print('My shopping list is now',shoplist) wuya = [] wuya.append(5) wuya.append(6) for item in wuya: print(item) else: print('for loop is over!')

 

12、元组使用代码

# FileName: using_tuple.py zoo = ('wolf', 'elephant', 'penguin') print('Number of animals in the zoo is', len(zoo)) new_zoo = ('monkey', 'dolphin', zoo) print('Number of animals in the new zoo is', len(new_zoo)) print('All animals in new zoo are', new_zoo) print('Animals brought from old zoo are', new_zoo[2]) print('Last animal brought from old zoo is', new_zoo[2][2])

 

13、字典dict使用代码

# Filename: using_dict.py # 'ab' is short for 'a'ddress'b'ook ab = { 'Swaroop' : '[email protected]', 'Larry' : '[email protected]', 'Matsumoto' : '[email protected]', 'Spammer' : '[email protected]' } print("Swaroop's address is %s" % ab['Swaroop']) # Adding a key/value pair ab['Guido'] = '[email protected]' # Deleting a key/value pair del ab['Spammer'] print('/nThere are %d contacts in the address-book/n' % len(ab)) for name, address in ab.items(): print('Contact %s at %s' % (name, address)) if 'Guido' in ab: # OR ab.has_key('Guido') print("/nGuido's address is %s" % ab['Guido'])

 

14、列表、元组和字符串都是序列,但是序列是什么,它们为什么如此特别呢?序列的两个主要特点是索引 操作符和切片 操作符。索引操作符让我们可以从序列中抓取一个特定项目。切片操作符让我们能够获取序列的一个切片,即一部分序列。

# Filename: seq.py shoplist = ['apple', 'mango', 'carrot', 'banana'] # Indexing or 'Subscription' operation print('Item 0 is', shoplist[0]) print('Item 1 is', shoplist[1]) print('Item 2 is', shoplist[2]) print('Item 3 is', shoplist[3]) print('Item -1 is', shoplist[-1]) print('Item -2 is', shoplist[-2]) # Slicing on a list print('Item 1 to 3 is', shoplist[1:3]) print('Item 2 to end is', shoplist[2:]) print('Item 1 to -1 is', shoplist[1:-1]) print('Item start to end is', shoplist[:]) # Slicing on a string name = 'swaroop' print('characters 1 to 3 is', name[1:3]) print('characters 2 to end is', name[2:]) print('characters 1 to -1 is', name[1:-1]) print('characters start to end is', name[:])

 

15、参考

如果你想要复制一个列表或者类似的序列或者其他复杂的对象(不是如整数那样的简单 对象 ),那么你必须使用切片操作符来取得拷贝。如果你只是想要使用另一个变量名,两个名称都 参考 同一个对象,那么如果你不小心的话,可能会引来各种麻烦。

# Filename: reference.py print('Simple Assignment') shoplist = ['apple', 'mango', 'carrot', 'banana'] mylist = shoplist # mylist is just another name pointing to the same object! del shoplist[0] print('shoplist is', shoplist) print('mylist is', mylist) # notice that both shoplist and mylist both print the same list without # the 'apple' confirming that they point to the same object print('Copy by making a full slice') mylist = shoplist[:] # make a copy by doing a full slice del mylist[0] # remove first item print('shoplist is', shoplist) print('mylist is', mylist) # notice that now the two lists are different

 

16、python中使用中文,需要在程序代码第一行中加入编码设置语句,格式可以有多种,以便解释器可以知道该文件编码:

    # -*- coding: cp936 -*-

    为其中方式之一.

 

你可能感兴趣的:(Python 简单笔记)