运算符

运算符详情可参考连接http://www.runoob.com/python/python-operators.html

注意点:

a. i += 1 相当于 i = i - 1,同理可推 -=

b. if 1 == 1 or 1 > 2 and 1 == 4: -->运算符从左至右依次运算

print('正确')
else:
print('错误')

 c. 关键字获取

  content = "This is a Python blog."

  if "Python" in content:

    print ("Bingo")

  else:

    print ("Not in")

数据类型

1. 整数

i. 创建整数型

  a = 123 或 a = int(123)

ii. 将字符串转换为整数型

  a = "18" --> new_a = int(a)

2. 布尔值

  i. 创建布尔值型变量

    a = True / False

  ii. 转换布尔值型

    数字转换:0 = False, 其他 = True

    字符串:"" = False, 其他 = True

3. 字符串

  i. 创建字符串

    name = "Albert" 或 name = str(Albert)

  ii. 将整数型转化为字符串型

    age = 19 --> new_age = str(age)

  iii. 字符串的拼接

    name = "Albert"

    gender = "female"

    new_str = name + gender

  iv. 字符串格式化

    str = "Name: %d, Gender: %d, Age: %d"

    new_str = str % (Albert,female,18)

    或者 print ("Name: %d, Gender: %d, Age: %d" % (Albert,female,18))

  v. 判断子字符串是否包含在序列中(之前已经有提及,比如)

content = "This is a Python blog."

  if "Python" in content:

    print ("Bingo")

  else:

    print ("Not in")

  vi. 移除字符串左右两端的空白

    str = "this is a test string"

    new_str = str.strip()   --> 移除字符串两端空白

    new_str = str.lstrip()  --> 只是移除字符串左端空白

    new_str = str.rstrip()  --> 只是移除字符串右端空白 

  vii. 分割(根据特定字符)

    str = "this|is|a|test|string"

    new_list = str.split('|')

    new_list = str.split("|",1) --> 只在第一次出现“|”的位置进行分割

    new_list = str.split("|",-1) --> 只是在最后出现“|”的位置进行分割

  viii. 字符串长度

    str = "this is a test string"

    print (len(str))

  ix. 索引

    str = "this is a test string"

    i = 0

    while i < len(str)

      print(str[i])

      i += 1

  x. 切片

    str = "this is a test string"    

    print(str[0])  --> 打印字符串第一个字符

    print(str[0:2]) --> 打印字符串0-1的字符

    print(str[5:9]) --> 打印字符串5-8的字符

    print(str[5:]) --> 从字符串第5个字符处打印至结束

    print(str[5:-2]) --> 打印字符串第5个字符至倒数第二个字符

    print(str[-2:]) --> 打印字符串倒数第二个字符

    print(str[0::2]) --> 字符串隔字符打印

4. 列表

  i. 创建列表

    lst = ['This','is','a','list','test']

    lst = list(['This','is','a','list','test'])

  ii. 子字符串包含关系判断

    if 'is' in lst --> True

    if 'is' in lst[0] --> True

  iii. 索引

    i = 0

    while i < len(lst):

      i += 1

      print(lst[i])

  iv. 长度

    print(len(lst))

  v. 切片

    new_lst = lst[0::2] --> 列表内元素间隔输出组成新的列表

  vi. 追加元素

    lst.append('for','Python')

  vii. 插入元素

    lst.insert(2,'not') --> 在list指定index元素之前插入新的元素

  viii. 删除元素

    lst.remove('test') or del lst[4]

  ix. 更新元素

    lst[0] = 'That' --> 相当于直接重新赋值

  x. 列表for循环

    for item in lst:

5. 字典

  i. 创建字典

    dict = {'name':'Albert','age':'18','height':'190'}

  ii. 索引(不同于列表,只能通过键获取对应值)

    dict['name'] = 'Albert'

  iii. 增加或修改字典键值对

    dict['weight'] = '75kg' --> 直接添加,如果没有相同键的话就自行加入,无序加入

  iv. 删除字典键值对

    del dict['name']

  v. 字典for循环

    for key in dict.keys():

    for value in dict.values():

    for key,value in dict.items():

  vi. 列表和字典之间的相互嵌套

    dict = {'name':'Albert' , 'age':'18' , 'height':'190' , '3D':[80,['A','C','B']80,80,{4:3}]}

    dict['3D'][1].append('D')

    dict['3D'][4][2] = 1

  示例:



1 user_list = [{'name':'alex','pwd':'123123','times':1},
 2              {'name':'eric','pwd':'123123','times':1},
 3              {'name':'tony','pwd':'123123','times':1}]
 4 usr = input("please input ur username:")
 5 psw = input("please input ur password:")
 6 flag = 0
 7 for item in user_list:
 8     if usr == item['name'] and psw == item['pwd']:
 9         item['times'] += 1
10         flag = 1
11         break
12 if flag == 0:
13     print("登录失败")
14 else:
15     print("登录成功")



6. 元组

创建元组

    t1 = (1,2,3,'A','B','C')  --> 小括号可以省略(不过最好都写以避免不必要的错误)

ii. 切片

    t1[0:]

    t1[0::2]

  iii. 元组加乘操作

    t1 + t1 = t1 * 2 = (1, 2, 3, 'A', 'B', 'C', 1, 2, 3, 'A', 'B', 'C')

  iv. 元组元素包含判断

    'A' in t1 --> True

  v. 元组异构操作(元组内嵌套可变类型,比如列表) --> 修改后并不会产生新的元组

    t2 = (1,2,3,['A','B','C'])

    t2[1].append('D')

    t2[1].pop()