python基础知识点

强类型语言

Python是强类型的语言,如果语言经常隐式地转换变量的类型,那这个语言就是弱类型语言,如果很少会这样做,那就是强类型语言。而Python很少会隐式地转换变量的类型

REPL

是四个单词的缩写

是read (读),evaluate(计算),print(输出),Loop(返回)

“读取-求值-输出”循环(英语:Read-Eval-Print Loop,简称REPL)是一个简单的,交互式的编程环境

常用函数

printf()

在python中是用%号可以进行字符串的拼接,这个跟print函数是无关的。以下进行举例

打印字符串

msg = "i am %s,my blogs is %s" % ("CodeScrew","www.cnblogs.com/codescrew")
print(msg) #结果为
        #msg = "i am %s,my blogs is %s" % ("CodeScrew","www.cnblogs.com/codescrew")

打印浮点数

msg = "i am %0.2f m" %1.785
print(msg)  #打印结果为i am 1.78 m

打印百分比

msg = "it is %0.2f %%" % 99.852
print(msg)  #打印结果为it is 99.85 %

使用键值对进行拼接

msg = "i am %(name)s.my age is %(age)d" % ({"name":"CodeScrew","age":23})
print(msg)  #打印结果为i am CodeScrew.my age is 23

数据类型

int 整形

long 长整型

float 浮点

String 字符

complex 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。

Boolean 布尔类型 (True,False) //必须要大写

int(x [,base ])         将x转换为一个整数  
long(x [,base ])        将x转换为一个长整数  
float(x )               将x转换到一个浮点数  
complex(real [,imag ])  创建一个复数  
str(x )                 将对象 x 转换为字符串  
repr(x )                将对象 x 转换为表达式字符串  
eval(str )              用来计算在字符串中的有效Python表达式,并返回一个对象  
tuple(s )               将序列 s 转换为一个元组  
list(s )                将序列 s 转换为一个列表  
chr(x )                 将一个整数转换为一个字符  
unichr(x )              将一个整数转换为Unicode字符  
ord(x )                 将一个字符转换为它的整数值  
hex(x )                 将一个整数转换为一个十六进制字符串  
oct(x )                 将一个整数转换为一个八进制字符串

注意点

字符串相加的时候会自动拼接

int() //内置函数转换成整形,boolean会自动转换成1与0

float() //自动转换成浮点

num=1_000_000 //这样赋值输出的时候,依旧会输出1000000

其他语言常用的++,--不能用可以使用i+=1这样的形式

如果赋值中有单引号要加反斜线转义(name='132'123')

运算符

2+2 加,也可以作为连字符使用

2-2 减

2/2 除

2*2 乘,对字符串的时候也能输出对应的次数,如果乘负数字符串会变成空

2**2 平方

4//2 除法得到整数,保留之后不会进行四舍五入

列表

类似于php的数组

使用方式 list=[1,23,4,True,'12']

可以存放整形,字符串,布尔值等等

list[0]访问第一个元素,list[-1]获取最后一个元素

list.append()像数组之中添加数据,默认放在最后一个,php中是list[]=9;就可以直接追加元素

list.pop() 删除最后一个元素,返回删除元素的值,会打印在cmd上

函数

def test(): #定义函数
    print('hello my website url is tongpan.com') #函数体
test()    #调用函数

传参

blockchian=[1]
def add_value(money):
    blockchian.append([blockchian[-1],money])
    print(blockchian)
add_value(3)
add_value(4)
add_value(5)

return 返回一个值

编程习惯多个下函数直接回车隔开

def sum(a,b=2): #如果这里传入了参数则按照传入的参数,如果没有传入参数,则b的值为2
    c=a+b
    return b
print(sum(1,3))#和形参必须一一对应print(sum(1))这样的写法是错误的
#也可以这样使用
def greet(name,age):
    print('大家号我是:'+name+'我今年'+age)

greet(age='28',name='tongpan')

作用域

函数外部无法使用内部的值

name='tsuiyi'
def get_name():
    name=input('请输入您的名字')
get_name()
print(name)

可以通过定义常量的方式

global data

来解决这一问题

name='tsuiyi'
def get_name():
    global name
    name=input('请输入您的名字')
get_name()
print(name)

这样一来就会输出用户输入的值

循环

遍历数组

for循环

block=[13,3312,3123]
for data in block:    #每次拿到元素之后赋值给block
print(data)

range()函数

python range() 函数可创建一个整数列表

range(start, stop[, step])
  • start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
  • stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
  • step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)

配合for使用

for i in range(1,9):
    print(i)

while循环

while True:
    print(213)

if判断

a=2
if(a==1):
    print(True)
else:
    print(False)

也可以这么写

a=2
if a==1:
    print(True)
else:
    print(False)

配合elif使用

a=3
if a==1:
    print(True)
elif a==3:
    print('a=3')
    break
else:
    print(False)

break和continue

python中没有switch循环

1.break

意思为结束循环

例:

i = 0
while i<10:
    i+=1
    if i==5:  #当i=5时,结束整个循环
        break
    print("i=%d"%i)

代码效果:

i=1

i=2

i=3

i=4

.continue

意思为结束当前循环进入下一个循环

例:

i = 0
while i < 10:
    i += 1
    if i==5:  #当i=5时,结束当前循环进入下一个循环
        continue
    print("i=%d"%i)

代码效果:

i=1

i=2

i=3

i=4

i=6

i=7

i=8

i=9

i=10

以上循环没有i=5

比较运算符 is和in

1==1    #返回True
1=='1'    #返回False
1 is 1    #返回True
data=[1,2,3]
data==[1,2,3]    #返回True
test_data=[1,2,3]
data is [1,2,3]        #返回False,因为这俩个在内存当中不数据,is是比较这俩个对象是不是同一个对象
1 in data    #返回True
a=1
a is 1     #返回True
data is not test_data #返回True相似于非号的作用不能喝等号同时使用
1 not in data    #返回False

python中是没有&&及||这两个运算符的,取而代之的是英文and和or。其他运算符没有变动

and和&&类似,or和||类似

>>> 10>9 and 1>9
False
>>> 10>9 or 1>9
True
Last modification:April 24, 2022
如果觉得我的文章对你有用,请随意赞赏