python基础1

必须要装的:python解释器,pycharm
解释器:把py代码翻译给计算机识别,并执行
pycharm,编辑器,只是用来写代码的,类似于word
单纯python解释器不适合之后写大量代码,如项目等

一.基础语法
1.变量
变量命名,由字母数字下划线组成,不能以数字开头
py中变量定义不需要指定类型
2.运算符
int(有符号整数)
float(浮点数)比如小数
bool布尔值(0,1.yes,no)
complex(复数)
在这里插入图片描述
整型
2e-2(0.02),2e+4(20000)

浮点型
凡是用科学计数法表示的都会被判定为浮点型

>>> bool_a= 1<3
>>> bool_a
True
>>> bool_b=1>3
>>> bool_b
False

bool类型
3.常见的运算符

算术运算符+ - * / 
**次方
%取余
//整除
>>> 2**3
8
>>> 10%3
1
>>> 10//3
3

赋值运算符
=,+=,-=,*=

>>> num=1
>>> num=num+1
>>> num
2
>>> num=1
>>> num+=1
>>> num
2

关系运算符
注意=和==的区别
==是判断是否相等,=是赋值

>>> name='admin'
>>> name=='root'
False
>>> name=='admin'
True
>>> name!='root'
True

关系运算符返回的是bool类型

逻辑运算符:与或非
and,or,not
逻辑与,全真则真,一假则假
逻辑或,全假则假,一真则真
逻辑非,真就是假,假就是真

>>> name=='admin'
True
>>> password='admin'
>>> name =='admin' and password=='admin'
True
>>> name =='admin' and password=='admi'
False
>>> name=='admin' or password=='0'
True

4.数据的输入和输出
输入:

>>> name=input()
hello
>>> name
'hello'
>>> name = input()
chihao
>>> name
'chihao'
>>> name=input('请输入名称:')
请输入名称:chihao
>>> name
'chihao'
>>> age=input('年龄')
年龄19
>>> age
'19'
>>> age=int(input('年龄'))  #这一步是重点
年龄19
>>> age
19
>>> age > 18
True

int()转换数据类型为整形
float()转换数据类型为浮点型
bool()转换数据为布尔型

>>> num = 10
>>> num
10
>>> bin(num)
'0b1010'
>>> binary_num = bin(num)
>>> type(binary_num)
<class 'str'>

bin十进制转二进制
输出:

>>> name = 'chihao'
>>> age='25'
>>> print('姓名: %s 年龄:%d' %(name,age))
姓名: chihao 年龄:25

%s, s=string,%d, d=digit
占位符,字符串和整型的数字
把name,age传参给前面的s和d

>>> score=99.99992
>>> print('姓名: %s 年龄:%d 分数:%f' %(name,age,score))
姓名: chihao 年龄:25 分数:99.999920
>>> print('姓名: %s 年龄:%d 分数:%.2f' %(name,age,score))
姓名: chihao 年龄:25 分数:100.00

&f,f=float
%.2f保留小数点后两位

>>> print(f"姓名:{name},年龄:{age},分数:{score}")
姓名:chihao,年龄:25,分数:99.99992

f格式化,{}变量
.%s
%d
%f
%.2f
以及format格式化打印字符串

5.一些函数
(1)abs求绝对值,divmod返回商和余数,pow次方,round保留小数点后几位

>>> abs(-2)
2
>>> divmod(10,3)
(3, 1)
>>> pow(3,3)
27
>>> round (3.1213132,4)
3.1213

(2)比较常用的模块,math,random

>>> import math
>>> math.pi
3.141592653589793
>>> import random
>>> random.randint(1.10)
>>> random.randint(1,10)
6
>>> random.randint(1,10)
5
>>> random.randint(1,10)
3

6.pycharm常用操作
(1)快捷键
alt+insert
(2)进入设置见面
ctrl+alt+s
(3)设置背景颜色
二.三大流程控制语句
1.顺序,分支,循环
分支流程:
满足条件做a,不满足条件做b
2.

#python中input接受的是字符串,如果接受整型数,需要通过int转成整型数
age = int(input('年龄:'))
#需求:如果年龄大于18,输出成年,否则输出未成年
if age > 18:
    print('成年')
else:
    print('未成年')  

结果:

年龄:25
成年

Process finished with exit code 0

冒号和缩进是py的语法规范,必须遵守

#三元运算符:age>18?"成年" : "未成年"
age = int(input('Insert your age:'))
print('adult' if age > 18 else 'children')

把之前的代码简化一下
3.多分支

#需求:如果score大于90小于100,则为A。在80到90之间,则为B,小于80为C
score = int(input('成绩:'))
if 90<=score<=100:
    print('u got A')
elif 80<=score<=90:
    print('u got B')
else:
    print('u sb')

结果:

成绩:66
u sb

Process finished with exit code 0

当有多个条件的时候,就用多分支,elif
elif满足第二个条件做什么操作

score = int(input('成绩:'))
if 90<=score<=100:
    print('u got A')
elif 80<=score<=90:
    print('u got B')
elif 0<=score<=80:
    print('u got C')
else:
    print('u sb')

结果:

成绩:75
u got C

Process finished with exit code 0

需求:输入用户名和密码,判断输入是否正确,如果输入的用户名为admin,密码为chihao则提示成功,否则提示失败

user = input('请输入用户:')
password = input('请输入密码:')
if user == 'admin' and password == 'chihao':
    print('登陆成功')
else: print('用户名或密码错误')

结果:

请输入用户:admin
请输入密码:chihao
登陆成功

Process finished with exit code 0

三元运算符:双分支的简化版
3.循环流程控制

#需求:输出0-100
#count =0 while 0<=100,print(0) count+=1
#count =1 while 1<=100,print(1) count+=1
#count =99 while 99<=100,print(99) count+=1
#count =100 while 100<=100,print(100) count+=1
#count =101 while 101>100,end
count = 0
while count <= 100:
    print(count)
    count = count +1
count +=1 #可以把count=count+1优化为此

4.while死循环

#用户登录成功进入系统,登陆失败则继续登录,并且统计登录次数。
try_count = 0 #用户登录了几次
while True:
    print(f'用户第{try_count+1}次登录系统')
    try_count +=1
    user = input('请输入用户:')
    password = input('请输入密码:')
    if user == 'admin' and password == 'chihao':
        print(f'用户{user}登录成功 ')
        exit() #退出程序
    else: print(f'{user}登陆失败')

结果:

用户第1次登录系统
请输入用户:daasd 
请输入密码:dsa
daasd 登陆失败
用户第2次登录系统
请输入用户:admin
请输入密码:asdsad
admin登陆失败
用户第3次登录系统
请输入用户:admin
请输入密码:chihao
用户admin登录成功 

{}是什么意思?
{}是一个占位符,里面的内容是name对应的值
test:输出0-100所有的偶数

count = 0
while count <= 100:
    print(count)
    count +=2

5.for循环
在pycharm中,python console可以查看一些帮助
range指的是-1的数字,比如range(0,100),输出的会是0-99

#需求:输出0-100
for num in range (0,101): #range指的是从start开始到end-1结束
    print(num)

在pyconsole里查看

list(range(0,10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
list(range(0,11,2))
[0, 2, 4, 6, 8, 10]

用for循环输出0-100所有的偶数

for num in range (0,101,2):
    print(num)

用for循环输出0-100所有的奇数

for num in range (1,101,2):
    print(num)

for循环遍历字符串

string = 'chihao'
for item in string:
    print('---',item)

结果

--- c
--- h
--- i
--- h
--- a
--- o

倒数10-1

for num in range (10,0,-1):
    print(num)

总结:循环可以通过while和for循环
6.break语句和continue语句
break刹车,continue跳出本次循环

count = 0
while count <=10:
    count+=1
    print(count)
    if count ==5:
        continue
        print('hello')

test:99乘法表

"""
i   j
1   1
2   1,2
3   1,2,3
4   1,2,3,4
...
9   1,2,3...,9
"""
#如何让print不换行呢?
for i in range(1,10):
    for j in range(1,i+1):
        print(f'{j}*{i}={j*i}',end=' ')
    print( )
1*1=1 
2*1=2 2*2=4 
3*1=3 3*2=6 3*3=9 
4*1=4 4*2=8 4*3=12 4*4=16 
5*1=5 5*2=10 5*3=15 5*4=20 5*5=25 
6*1=6 6*2=12 6*3=18 6*4=24 6*5=30 6*6=36 
7*1=7 7*2=14 7*3=21 7*4=28 7*5=35 7*6=42 7*7=49 
8*1=8 8*2=16 8*3=24 8*4=32 8*5=40 8*6=48 8*7=56 8*8=64 
9*1=9 9*2=18 9*3=27 9*4=36 9*5=45 9*6=54 9*7=63 9*8=72 9*9=81 

以上其实是i×j的,正确应该是j×i
test:防黑客暴力破解的用户登录系统,登录三次不成就不能继续登录,正确的用户名为root,密码为chihao

try_conut = 1
while True:
    print(f'用户第{try_conut}次登录系统')
    try_conut += 1
    name = input('用户名:')
    password = input('密码:')
    if name == 'root' and password == 'chihao':
        print(f'用户{name}登陆成功')
        exit()
    elif try_conut > 3:
        print('今日不能登录')
        break

7.while循环和else结合的补充:
while条件表达式:
满足条件执行的内容
else:
不满足条件执行的内容

编程没有绝对的正确,只要能实现自己的目的就行了

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值