Python3 基本数据类型



a).首先变量不需要声明,但在使用前必须赋值,然后才能使用它
b).Python 里面,变量没有类型,"类型"指的是变量内存中对象的类型。
c).等号(=)用来给变量赋值。
d).等号(=)运算符左边是一个变量名,等号(=)运算符右边是存储在变量中的值。


number=123    #数字变量
str="class"  #字符串变量
print(number)
print(str)


执行后的结果:


123


class




Python3 中有六个标准的数据类型:
Number(数字)、 String(字符串)、 List(列表)、 Tuple(元组)、 Sets(集合)、 Dictionary(字典)




Python3 支持 int、float、bool、complex(复数)



在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。

type() 函数可以查出变量里的对象类型。如下:

a, b, c, d = 20, 5.5, True, 4+3j
print(type(a), type(b), type(c), type(d))

执行后结果是:

<class 'int'> <class 'float'> <class 'bool'> <class 'complex'>

除了type()函数可以查类型,instance()函数也可以查,但是两者有很大的区别:

  • type()不会认为子类是一种父类类型。
  • isinstance()会认为子类是一种父类类型。
  • type 是用于求一个未知数据类型对象,而 isinstance 是用于判断一个对象是否是已知类型。
  • type 不认为子类是父类的一种类型,而isinstance会认为子类是父类的一种类型。
            可以用 isinstance 判断子类对象是否继承于父类,type 不行。
  • 综合以上几点,type 与 isinstance 虽然都与数据类型相关,但两者其实用法不同,type 主要用于判断未知数据类型,isinstance 主要用于判断 A 类是否继承于 B 类:

class A: pass class B(A): pass isinstance(A(), A) # returns True type(A()) == A # returns True isinstance(B(), A) # returns True type(B()) == A # returns False

注意的地方:
    1、Python可以同时为多个变量赋值,如 a, b,c ,d= 1, 2,3,4
    2、一个变量可以通过赋值指向不同类型的对象。
    3、数值的除法(/)总是返回一个浮点数,要获取整数使用 ( // )  
    4、在混合计算时,Python会把整型转换成为浮点数。



运算符

Python语言支持以下类型的运算符:算术运算符、比较(关系)运算符、赋值运算符、逻辑运算符、位运算符、成员运算符、身份运算符、运算符优先级

其中比较常用的是:

                         a)算术运算符:     +     -       *        / (得到小数)、 %(得到余数)

                         b)关系运算符:     =      <      >       >=      !=

                         c)逻辑运算符      and      or      not

小例子如下:


a = 21
b = 10
c = 0

c = a + b
print(c)

c = a - b
print(c)

c = a * b
print(c)

c = a / b
print(c)

c = a % b
print(c)





运算符

描述

实例

=

赋值运算符

c = a + b 将 a + b 的运算结果赋值为 c

+=

加法赋值运算符

c += a 等效于 c = c + a

-=

减法赋值运算符

c -= a 等效于 c = c - a

*=

乘法赋值运算符

c *= a 等效于 c = c *a

/=

除法赋值运算符

c /= a 等效于 c = c / a

%=

取模赋值运算符

c %= a 等效于 c = c %a

**=

幂赋值运算符

c **= a 等效于 c = c ** a

//=

取整除赋值运算符

c //= a 等效于 c = c // a

Python3 条件控制

Python条件语句,是通过一条或多条语句的执行结果(True或者False)来决定执行的代码块。

#输入成绩
a = int(input("请输入成绩: "))
print(" ")
if a>= 90:
    print("优秀")
elif 70<=a<90:
    print("良好")
elif 60<=a<70:
    print("及格")
else:
    print("不及格")



age = int(input("请输入你家狗狗的年龄: "))
print("")
if age < 0:
    print("你是在逗我吧!")
elif age == 1:
    print("相当于 14 岁的人。")
elif age == 2:
    print("相当于 22 岁的人。")
elif age > 2:
    human = 22 + (age -2)*5
    print("对应人类年龄: ", human)
 
### 退出提示
input("点击 enter 键退出")


 

Python3 循环语句

Python中的循环语句有 for 和 while。我们先学了for语句:for循环可以遍历任何序列的项目,如一个列表或者一个字符串。

下面就来练习一下:#输入数字,控制菱形

a=int(input("请输入行数: "))
for p in range(1,a):
    for i in range(1,a-p):
        print(end=" ")
    for x in range(1,p+1):
        print("*",end=" ")
    print()
for k in range(1,a):
    for j in range(2,k+1):
        print(end=" ")
    for y in range(k,a):
        print("*",end=" ")
    print()
#求1~100以内的质数
for a in range(2,101):
    for b in range(2,a+1):
      if a%b==0:
          break
    if a==b:
        print(a)

题目:有四个数字:1、2、3、4,能组成多少个互不相同且无重复数字的三位数?各是多少?

方法一:

for i in range(1,5):
    for j in range(1,5):
        for k in range(1,5):
            if( i != k ) and (i != j) and (j != k):
                print(i,j,k)

方法二:

num=[1,2,3,4]
i=0
for a in num:
    for b in num:
        for c in num:
            if (a!=b) and (b!=c) and (c!=a):
                i+=1
                print(a,b,c)
print('总数是:',i)

方法三:

for i in range(1, 5):
    for j in range(1, 5):
        if (j==i) :
            continue;
        for k in range(1, 5):
            if (k==i or k==j):
                continue;
            print(i,j,k);