在python中,有一个内置寻求帮助的函数,这个函数是help
help(print)
#用法一
print('hello world!')
name='小白'
print(name)
#用法二
age=19
gender='boy'
print(name,age,gender)
print(name,age,gende,sep='#')
#转义字符:\n 换行
print('hello\nkitty')
print('AAA',end='')#空字符串
print('BBB,end='')
print('CCC,end='')
print(value...,sep=' ',end='\n')
\t | 制表符 |
\r | 回车 |
\" | 双引号 |
\\ | 斜杠 |
print('亲爱的xxx:\n','\t请点击链接激活用户:激活用户',end='')
print('格林说:"我想吃蛋糕"')#单引号套双引号等同于下句
print('格林说:\"我想吃蛋糕\"')
print("格林说:\'我想吃蛋糕\'")#双引号套单引号
python支持双引号单引号的嵌套
\r的功能,让光标回到行首,覆盖之前的内容
print(r'hello\py\thon')
r’ ’ 原样输出字符串内容,不进行转义
在python中,没有特殊的标识符声明常量,命名时,名字是大写的认为是常量值。
NAME='Jack'
print('NAME')#常量
print('hello')
value='hello'
print(value)
message='[APP]你正在使用验证码登录,\n验证码是9564,\n涉及账户安全,请保证安全'
print(message)
message1=''' #保留格式输出
[APP]
您正在使用验证码登录,
验证码是XXXX,
涉及账户安全
2020.02.01
'''
+拼接与C++的<<很像
占位符形式和C语言很像,但注意’ '后没有“逗号”,用%替换“逗号”
person='齐天大圣'
address='青岛市市南区'
phone='1231654986652'
print('订单的收件人是:'+person+',收货地址是:'+address+',联系方式:'+phone)
print('订单的收件人是:%s,收货地址是:%s,联系方式:%s' %(person,address,phone))
能拼接的前提是两者类型一致,str是一种内置函数。
name='赵云'
print('姓名是:'+name) #str+str
age=18
print('年龄是:'+age) #报错
age=18
print('年龄是:'+str(age))
print('年龄是:%s' %age)#用%s -->str简写 底层:str(age)
isMarry=False
print("结婚了么?回答:%s" %isMarry) #str(False)-->'False' 输出False
int(99.99) #99
int(18.5) #18
age=18.5
print('年龄是:%d',%age)
year=2019
print('今年是:%02d'%year) #2019
salary=8899.35
print('我的薪水是:%.1f'%salary) #.1f表示小数点后面的位数
movie='大侦探皮卡丘'
ticket=45.9
count=35
total=ticket*count
message='''
电影:%s
人数:%d
单价:%f
总票价:%.1f
''' %(movie,count,ticket,total)
print(message)
在python2.6后,有format功能,认为是字符串的一个函数
age=18
message='乔治说:我今年{}岁了'.format(age)
print(message)
age=18
hobby='打飞机'
money=152.2
message='乔治说:我今年{}岁了,我喜欢{},我现在拥有{}块钱'.format(age,hobby,money)
print(message)
name=input("请输入名字:") #阻塞式
print(name)
练习:
coins=input('请充值:')
print(type(coins)) #class str
print('''
********************************
捕鱼达人
********************************
''')
username=input('输入参与游戏用户名:')
password=input('输入密码:')
print('%s请充值才能进入游戏!'%username)
coins=input('请充值:')
print('%s充值成功!当前游戏币是%s'%(username,coins))
只要再次赋值,就会出现新的地址 id()是取地址的意思
name='admin'
name1=name
print(id(name1),name1)
print(id(name),name)
python
num=8
num+=5
print(num)
a='abc'
a+='ef'
print(a) #此时'+'就是连接符,包含两个动作
a=4
b=2
print(a**b)#表示乘方 a的b次幂
a=5
b=2
print(a//b)#整除运算
a=5
b=2
print(a%b)#求余数
print('&' * 50) 打印50次&
n1=input('请输入第一个数:')
n2=input('请输入第二个数:')
result=n1>n2
print('n1>n2: ',result)
result=n1==n2
print('n1==n2',result)
m1='mmm'
m2='mmm'
result=m1==m2
print('n1==n2',result)
数据库应用
username=input('请输入用户名:')
uname='admin123'
result=username!=uname #如果两者不相等则会返回True,相等返回False
print('用户名的验证结果是:',result)
is 比较的是地址,注意小整数池和字符串,一般重复创建的时候会指向同一个对象。
age=20
age1=20
print(age is age1) #True
这里有一个问题,看下述代码
money=2000000
print(id(money))
salary=2000000
print(id(salary))
print(money is salary)
在交互式界面输出是一个结果,在源文件输出是另一个结果
源文件批量处理代码
python xxx.py 2000000的值在第一行运行结束之后,程序未结束,这次程序开辟的空间还存在,第二行的2000000的值对第一行代码开辟的地址进行了复用,所以输出True。
交互式一句一句的执行
这里存在一个小整数对象池的问题
整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池,避免为整数频繁申请和销毁内存空间
Python对小整数的定义是[-5,256],这些证书对象是提前建立好的,不会被垃圾回收。在一个Python的程序中,无论这个整数处于哪个LEGB中的哪个位置,所有位于这个范围内的整数使用的都是同一个对象。
and 逻辑与
or 逻辑或
not 逻辑非
n1=8
n2=5
n3=3
result=n1>=(n2+n3) and n1>n2
print(result)
& 与
| 或
~ 取反
^ 异或
<<
>>