python语言基础

python语法入门

一、与用户交互

 

name = input('请输入你的名字:')   #接收用户的输入,无论用户输入什么类型,最终返回的数据类型一定是字符串。

 

关于用户的输入,Python2.x Python3.x是有一点区别的,Python2用户输入需要声明数据类型,而Python3不需要,Python2raw_inputPython3input一样。

二、格式化输出方式

1、使用占位符方式  %s   %d

 

print('my name is %s , my age is %s'%(name , age))  #这里使用了占位符,后面的%是将变量名与前面的占位符相关联

 

print('my name is %s, my age is %d'%(name,18))   #这里后面用%d代替了%s,%d占位符只能接收数字类型,%s可以接收任何类型

拓展:

i = 1231412
print('%.2f'%i)      #%.2f :保留两位小数

2、format 方式

print('my name is {}, my age is  {}'.format(name, age))     #.format 方式
print('my name is {name}, my age is {age}'.format(name = name , age = age))   #指定类型

3、f-string #在Python3.0以后才有

print(f'my name is {name}, my age is {age}')     # 指定对象类型

三、基础数据类型

1、整型   

定义:如年龄、手机号码、身份证(X除外)

 a = 1    #  a= int(1)
b = '12'
print(type(b))
int(b)
print(type(b))

2、浮点型 

定义:体重、升高、薪资

f1 = 1.9   # f1 = float(1.9)
print(type(f1))

需要注意的是字符串转换为整型时,需要先将字符串转为浮点型,然后再转为整型。

f2 = '1.9'
print (type(f2))
f2 = float(f2)
print(type(f2))
f2 = int(f2)
print(type(f2))

3、复数

>>> a = 1-2j
>>> a
(1-2j)
>>> type(a)
<class 'complex'>
>>>
>>>
>>> a.real
1.0
>>> a.imag
-2.0

# python2与python3的区别

python2的这个范围[-24xxxxxxxx,24xxxxxxxx],就叫int超过这个范围:long,而在python3中没有长整型这么一说的。

4、字符串

定义:存一些描述性信息,存个人爱好,个人简介

s1 = 'sean'        #  s1  = str(sean)

python2与Python3区别

Python2:str本质其实是一个拥有8个bit位的序列

Python3: str本质其实是Unicode的序列

PS:

字符引号没有区别但不能混用

如果字符串还有引号,必须嵌套

字符串拼接是开辟一个的新的内存空间,将新的值存入。

4、列表

定义:存一个或者多个不同类型的值

在编程中,索引数数是从0开始的,即第一个对象的索引为[0]

y = ['大象','美女',['read','study']]

 print(y)
 print(type(y))
 print(y[0])
 print(y[2])
 print(y[2][0])
l1 = ['sean',18,['study','read']]
print(l1)
print(type(l1))
l1 = [
    ['egon',73,'烫头',['','','rap']],
    ['alex',84,'美女']
]
print(l1[0][1])
print(l1[1][2])
print(l1[0][3][2])

5、字典

定义:通过大括号存储数据,通过key,value这种映射关系定义键值对,每个键值对通过都好分隔。

d1 = {''name':'sean', 'age':'18''}    # d1 = dict({''name':'sean','age':'18''})
print(d1['name'])
print(type(d1))

d2 = {'name':'tank','age':73,'hobby':[
    'piao',
    '妹子'
]}

 print(d2['hobby'][0])

6、布尔

主要是用来判断事物的对错,一般布尔类型是不是单独定义的。

tag = True      # tag = bool(True)         True注意首字母大写
tag1 = False     #tag  = bool(False)       False注意首字母大写
 print(1 < 2)

 a = 1
 b = 1
print(a == b)  # 等号比较的是value
print(a is b)  # is比较的是id(地址)

a = -213456678789893534121111111111111111111111111111111122222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222254654.1545454545454444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444
b = -213456678789893534121111111111111111111111111111111122222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222254654.1545454545454444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444444
print(a is b)

PS:

值相等的情况下,id不一定相等

id相等的情况下,值不一定相

四、基础运算符

1、算数运算符

a = 9
b = 2

print(a // b)  # 取整。
print(a % b)  # 取模
print(a ** b)  # 次幂 9 ^ 2

2、比较运算符

print(a == b)  # 判断运算符左右两边的值是否相等
print(a != b)  # 判断运算符左右两边的值是否不相等

print(a > b)
print(a >= b)

3、赋值运算符

1)增量赋值

a = 1
a += 1  # a = a + 1
print(a)

a -= 1
print(a)

a *= 2
print(a)

a /= 2
print(a)

2)链式赋值

x = 1
y = 1
z = 1
x = y = z = 1
print(x,y,z)

3)交叉赋值

>>> a = 1 
>>> b = 2
>>> print(f'a:'a',b:'b'')
  File "<stdin>", line 1
    print(f'a:'a',b:'b'')
               ^
SyntaxError: invalid syntax
>>> print(f'a:{a},b:{b}')
a:1,b:2
>>> c = a
>>> a = b
>>> b = c
>>> print(f'a:{a},b:{b}')
a:2,b:1
>>> a = 10
>>> b = 11
>>> a,b = b,a
>>> print(a,b)
11 10

4)解压赋值

1 2 3 4
>>> l2 = [2,3,4,5]        
>>> a,b,c,*_ = l2                          #*_可以接收溢出的元素
>>> print(a,b,c)
2 3 4
>>> l3 = [3,4,5,6]
>>> *_, a,b,c = l3
>>> print(a,b,c)
4 5 6
>>> a = 10
>>> b = 11
>>> a.b = b,a

6、与或非

>>> a = 1
>>> b = 2
>>> c = 3
>>> print(a<b and b>c)
False
>>> 
>>> a = 1
>>> b = 2
>>> c = 3
>>> print(a<b and b>c)
False
>>> print(a>b or a<c and b>c)
False
>>> 

 

    原文作者:蛋蛋的丶夜
    原文地址: https://www.cnblogs.com/xy-han/p/11783060.html
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞