01. 基础语法

2019-12-11  本文已影响0人  哈哈大圣

基础语法

本系列Python博客适合已有其他编程语言基础的小伙伴快速入门!

一、变量

1). 变量名命名规则

  1. 以数字、字母、下划线组合。
  2. 不能以数字开头,不能为关键字,不要和python内置函数名相同 可能会被覆盖,比如不要用sum,因为sum(1,2,3)的值为5。
  3. 大小写敏感。
  4. 查看变量名的代号如下,并不是实际内存地址,只是一个代号,如果变量名的内存地址相同,则id号相同
id(variate)

2). 变量类型分类

  1. 可变型变量:列表、字典
  2. 不可变变量:、数字、字符串、元组、布尔值:True False (Python中的布尔值首字母大写)

3). 访问类型:

  1. 直接访问:数字
  2. 顺序访问:字符串、列表、元组
  3. 映射的访问:字典

4). 存放元素的个数区别:

  1. 容器类型:列表、元组、字典与自定义类型。
  2. 原子类型:数字、字符串

5). 常量

约定俗成将全部大写表示的变量当做常量。

6). 注释

  1. 行注释
# 注释内容
  1. 块级注释
'''注释文字'''
""" 注释文字"""

二、运算符

1).符号分类

  1. 运算符:+-*/**(次方)%(求余)//(舍去小数)
  2. 赋值符号:= (支持复合赋值运算,例如 +=)
  3. 符号逻辑运算: == (比较判断) > >= < <= != (<>) (!一般和等号连用, 不能代替not)
  4. 逻辑运算:
    • and: 并
    • or: 或
    • is: 判断两个对象是否是同一个
    • not: 非, (没有not=这种写法)
    • in:集合运算:判断字符串是否在另一个字符串中或者对象是否在另一个对象中。
    • not in:与in的含义相反

2). 简单案例

import copy
s1 = [[1,2,3]]
s2 = copy.deepcopy(s1)
print(s1[0][1] is s2[0][1])

# True,一切皆对象,解释器优化的结果
name = 'lingting'
if 'ling' in name:
 print('OK')  # OK
else:
 print('Error')

python里面没有 i++ ,i--;++i;--i

3). 运算举例

  1. 结果是算数值

    1. 算数运算a = 10 * 10
    2. 赋值运算a = a + 1 a += 1
  2. 结果是布尔值

    1. 比较运算 a = 1 > 5
    2. 逻辑运算 a = 1 > 6 or 1 == 1
    3. 成员运算 a = "haha" in "hahadasheng"
  3. 相互交换值简写

a = 'a'
b = 'b'
a,b = b,a
a,b = 1,2
a,b = b,a+b   #这里的a+b中的a还是没有赋值的a
print(a, b)
  1. 多个变量赋值
a, b, c, d, e= "a b c d e".split(" ")

4). 运算符优先级:

  1. 先括号
  2. 先乘除,后加减
  3. 对于and or 执行顺序,从前到后进行判断

java中的逻辑运算&&的优先级比||

三、条件语句

PS:缩进用4个空格(Tab键)注意缩进如果是空格键和Tab键混用容易引起报错!

1).一般形式

if a == b and c != d and !e or f in g or h not in i:
    pass
else
    pass

2).嵌套

if condition_one:
    pass
elif condition_two:
    pass
...
else:
    pass

四、循环

1).for循环语句

  1. 格式
for 定义变量 in 容器or字符串:
    pass
    continue # 下面不执行,继续循环到结束
    break    # 直接跳出循环
else:        # 非必须语法,偶尔会用到这个功能
    pass     # 如果for语句中途退出,没有执行到最后抛异常,则这里就会执行

pass的作用:不做任何事情,一般用做占位语句

  1. 案例
# 1到3个int参数:[起始位置] [终止位置不包含] [步长]
# 创建连续的数字,3中优化了,要在循环时动态创建
v = range(100)

for item in v:
    print(item)

for i in range(0,100,2):
    print(i)
# 创建一个不连续的数字序列,间隔为Long_number
# range(strat_number,end_number,long_number)
a = range(100,10,-10) # 创建一个不连续的数字序列,间隔为Long_number,倒叙

3).while语句

  1. 格式
while 布尔值:
    pass
    break
    continue
else:   # 与for中的else效果等同
    pass
  1. 案例
# 死循环
while 1:
    print('nice!')
  1. 求1-2+3-4+5 ... 99的所有数的和
n = 1
s = 0 # s是之前所有数的总和
while n < 100:
    temp = n % 2
    if temp == 0:
        s = s - n
    else:
        s = s + n
    n = n + 1
print(s)
上一篇下一篇

猜你喜欢

热点阅读