python基础学习1

前言:本文为小编自主学习python的过程中的笔记和对应的练习应用 ,希望能帮助到大家,也希望大家能一起交流学习。

目录

一、输出与输入

二、变量

三、格式化输出

1.%s、%d、%f

2.format函数

四、运算符

算术运算符

比较(关系)运算符

赋值运算符

位运算符

逻辑运算符

成员运算符

 身份运算符

运算符优先级

五、判断

六、循环

1.while循环

2.for循环

3.break和continue

七.编码解码


一、输出与输入

print函数
用于将对象输出,当输出对象为字符串时需要加上英文引号(单双引号都可以,但一般用双引号,防止与字符串内的符号产生歧义。如don't);而当输出对象为数字时不用加,否则会以字符串形式输出。
输出语句参数
    1.  sep可设置隔开多个参数的方式( 默认是以空格隔开)
    2. end可设置结尾方式(默认是以换行结尾)
例如:

print(123,456,789)
print(123,456,789,sep="*")  
print("hello",end="*") 
print("world") 

input函数
可以实现用户输入并返回值,且返回值为字符串类型。

二、变量

1.数据类型
str(字符串)int(整数型) float(浮点型) bool(布尔型) complex(复数) 等
2.查看数据类型
type()  用来查看数据类型
3.数据类型的转换
str() 将数据转换为字符串类型
int() 讲数据转换为整数型
eval() 可将input读入的输入转为适当对象
4.标识符

  •  由数字、字母和下划线——组成(汉字也可以,但不推荐)
  • 不能数字开头
  •  不能和关键字重名
  • 区分大小写

查看关键字的方法:

import keyword
print(kerword.kwlist)

5.len()函数  用于查看对象长度或个数

三、格式化输出

1.%s、%d、%f

        准备数据
        格式化符号输出工具   %s -字符串  %d -十进制整数  %f -浮点数

age = 18
name = "yz"
weight = 50.25
# 1.今年我的年龄是x岁  # 整数
print("今年我的年龄是%d岁" %age)
# 占位%age - %d特定的格式 age变量 ""字符串
# %03d表示长度为3,不足时用0填充
# 2.我的名字是x
print("我的名字是%s" %name)
# 3.我的体重是x公斤
print("我的体重是%f公斤" %weight)
# 默认是保留6位小数
print("我的体重是%.2f公斤" %weight)
# 保留2位小数
# 4.我的名字是x,今年x岁了
print("我的名字是%s,今年%d岁了" %(name,age))
# 如果有多个参数%()里面的参数用逗号隔开

2.format函数

有两种表达形式

        "  { }  ".format()      其中{}为占位符

        f"  { }  " 

# 第一种表达
name = "yz"
score = 100
# 不带编号的
print("我的名字是{},我的分数{}分".format(name,score))
# 带数字编号的
print("我的名字是{1},我的分数{0}分".format(score,name))  
# score = 0   name = 1
# 带关键字的
print("我的名字是{name},我的分数{s}分".format(name=name,s=score))
avgScore = 80
order = 66
print("班级的平均分为{:.1f}分".format(avgScore))
# 小数点 保留一位小数
print("考试的序号是{:0>3d}".format(order))
# 066  数字补零,填充左边,宽度为3
print("考试的序号是{:0<3d}".format(order))
# 660   数字补零,填充右边,宽度为3
# 不写>或<则默认填充左边
print("考试的序号是{:*>3d}".format(order)) # *66
print("aa{:^10}bb".format(order))
# 中间对齐,宽度为10   ^:shift+6

# 第二种表达
print(f"我的名字是{name},我的分数是{score}")
print(f"班级的平均分是{avgScore:.1f}")

四、运算符

算术运算符

算术运算符包括:加+、减-、乘*、除/、取模—返回除法的余数%、幂—返回xy次幂**、取整数—返回商的整数部分//

例如,计算ab的和:

a = 10
b = 20
print(a + b)
# 输出结果为 30

计算b除以a的余数:

a = 10
b = 20
print(b % a)
# 输出结果为:0

比较(关系)运算符

比较(关系)运算符包括:等于==、不等于!=或者<>、大于>、小于<、大于等于>=、小于等于<=。例如,判断ab是否相等:

a = 10
b = 20
a == b
# 返回:false

判断ab是否不相等:

a = 10
b = 20
a <> b
# 返回:true

赋值运算符

赋值运算符包括:

  • =:简单的赋值运算符;
  • +=:加法赋值运算符;
  • -=:减法赋值运算符;
  • *=:乘法赋值运算符;
  • /=:除法赋值运算符;
  • %=:取模赋值运算符;
  • **=:幂赋值运算符;
  • //=:取整除赋值运算符。

 例如,将c乘以a的值赋值给c

c *= a
# 等价于:
c = (c * a)

位运算符

程序中所有的数都是以二进制形式存储在计算机中的。例如,a = 13转化成二进制就是a = 1101,每一个数称为一位。位运算就是对二进制按位进行运算。

Python 中的位运算符包括如下六种:

  • &:按位与;
  • |:按位或;
  • ^:按位异或;
  • ~:按位取反;
  • <<:左移动;
  • >>:右移动。

&按位与

将两个二进制数按位进行逻辑与,对应位都为1时则结果为1,否则为0,最后得出结果。例如,a = 10,二进制数为a = 1010b = 8,二进制数为b = 1000,按位与的结果为a & b = 1000,换成十进制结果为8

|按位或

将两个二进制数按位进行逻辑或,对应位中有一个为1则结果为1,两个都为0则结果为0,最后得出结果。例如,a = 12,二进制数为a = 1100b = 8,二进制数为b = 1000,则其按位或的结果为a | b = 1100,换成十进制结果为12

^按位异或

将两个二进制数按位进行逻辑异或,对应位不同结果为1,相同为0,最后得出结果。例如,a = 12,二进制数为a = 1100b = 8,二进制数为b = 1000,则其按位异或的结果为a ^ b = 0100,换成十进制结果为4

~按位取反

将一个二进制数按位进行取反,当前位为1,则取反为0,当前位为0,则取反为1,最后得出结果。例如,a = 18,二进制数为a = 10010,则其按位取反的结果为~a = 01101,换成十进制结果为13

<<左移动

将一个二进制数进行左移,就是按二进制形式把所有的数字全部向左移动对应的位数,移动时高位舍弃,低位补零。例如,a = 3,二进制数为a = 0011,则其向左移动两位的结果为a << 2 = 1100,换成十进制结果为12

>>右移动

将一个二进制数进行右移,就是按二进制形式把所有的数字全部向右移动对应的位数,移动时低位舍弃,高位补符号位。例如,a = 4,二进制数为a = 0100,则其向右移动两位的结果为a >> 2 = 0001,换成十进制结果为1

逻辑运算符

  • and逻辑与

都真才真

逻辑表达式为x and y。当 x False时,x and y返回 False,否则它返回y 的计算值。

  • or逻辑或

一真则真

逻辑表达式为x or y。当xtrueyfalse时,得到的结果为true。只有当xy都为false时,得到的结果才为false。如果 x 是非 0,它返回 x 的值,否则它返回y的计算值。

  • not逻辑非

相反

逻辑表达式为not x。当xtrue时,得到的结果为false,当xfalse时,得到的结果为true

  • 优先级:not > and > or

成员运算符

  • in

x in y  若xy序列中,则返回true,若不在则返回false。例如:

a = 10
list = [1, 2, 3, 4, 5 ]
a in list
# 结果为:false
  • not in

x not in y  如果x不在y序列中,则返回True,否则返回false。例如:

a = 10
list = [1, 2, 3, 4, 5 ]
a not in list
# 结果为:True

 身份运算符

  • is 

运算符is表示判断两个标识符的存储单元是否相同。若相同,则返回true,否则返回false。例如:

a = 10
b = 10
a is b
# 结果为:true
  • is not

运算符is not表示判断两个标识符的存储单元是否不相同。若不相同,则返回true,否则返回false。例如:

a = 10
b = 10
a is not b
# 结果为:False

注:==用于检查两个对象是否相等,而is用来检查两个对象是否相同(是同一对象)。

运算符优先级

要实现上述功能,需要掌握运算符的优先级。下表列出了优先级由高到低的所有运算符:

类别类型名
**指数(最高优先级)
~ + -按位翻转,一元加号和减号(最后两个的方法名为 +@ 和 -@)
 /  % //乘,除,取模和取整除
+ -加法,减法
>> <<右移,左移运算符
&位 (AND )
^位运算符
<= < > >=比较运算符
<> == !=等于运算符
= % = /= //= -= += *= **=赋值运算符
is is not身份运算符
in not in成员运算符
not or and逻辑运算符

五、判断

基本语法:

if 判断条件:

    条件成立所执行的代码

else:

    条件不成立所执行的代码

三元表达式:

成立执行的代码 if 条件 else 不成立执行的代码

多重判断:

if 条件1:
    成立1所执行的代码
elif 条件2:
    成立2所执行的代码
elif 条件3:
    成立3所执行的代码
else :
    以上条件都不成立所执行的代码

六、循环

1.while循环

while 条件:
    条件满足时所执行的代码

while循环实现猜数字游戏:

import random
a, i = random.randint(1, 50), 6
print("猜数字", f"你一共有{i}次机会")
while i > 0:
    c = int(input("请输入一个1-50的整数:"))
    i -= 1
    if a > c and i > 0:
        print("猜小了", f"你还有{i}次机会")
    elif a < c and i > 0:
        print("猜大了", f"你还有{i}次机会")
    elif a == c:
        print("恭喜你猜对了!游戏结束!")
        break
    else:
        print("很遗憾你已经没机会了,游戏结束!")

while 实现九九乘法表: 

j = 1
while j<=9:
    i = 1
    while i<=j:
        print(f"{i}*{j}={i*j:<2d}",end=" ")
        i+=1
    print()
    j+=1

2.for循环

for 临时变量 in 序列:
    代码块

函数range

range(开始位置,结束位置,步长)    (左闭右开原则)通常与for联用

注:该函数返回的是整数序列

例:

x = 4
for i in range(0,x):
    print(i)

 for实现简单用户登录:

"""
1. 在循环里面  用户名  密码
2. 判断 正确 进入系统 break   错误继续输入
3、只有三次输入机会
"""
for i in range(3):
    name = input("请输入用户名:")
    pwd = int(input("请输入密码:"))
    if name == "yz":
        print("用户名输入正确")
        if pwd == 123:
            print("密码输入正确")
            break
        else:
            print("密码错误")
    else:
        print("用户名错误")
else:
    print("你已经没有机会了")

3.break和continue

break 退出循环,不再执行后续代码

continue 跳过,后续代码还会执行

注:break和continue只能在循环中写,且都针对于当前循环。

七.编码解码

encode :将其他编码的字符串转换成Unicode编码

decode :将Unicode编码转换成其他编码的字符串

如有哪些地方写错,欢迎纠正

  • 4
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值