Python 基础1

 

变量

1.变量定义

  • 在 Python 中,每个变量 在使用前都必须赋值,变量 赋值以后 该变量 才会被创建

  • 等号(=)用来给变量赋值

 

2.变量类型

在内存中创建一个变量,会包括:

  1. 变量的名称

  2. 变量保存的数据

  3. 变量存储数据的类型

  4. 变量的地址(标示)

**** Python 在定义变量时不需要指定类型!

**** Python 可以根据 = 等号右侧的值,自动推导出变量中存储数据的类型

变量类型可分为:数字类型和非数字类型

数字型:整数,浮点数,布尔型,复数型

非数字型:字符串,列表,元组,字典

 

3.变量之间的计算

1) 数字型变量 之间可以直接计算
2) 字符串变量 之间使用 + 拼接字符串
3) 字符串变量 可以和 整数 使用 * 重复拼接相同的字符串
4) 数字型变量 和 字符串 之间 不能进行其他计算

jici = 1.23
title = "**<>**"

print(type(jici)) ##  <class 'int'>
## print(jici * 100)
print(title * 10)

fjici = int(jici)
print(fjici)
print(type(fjici))

 

4.变量输入输出

print

input

类型转换

print(type(jici)) ##  <class 'int'>
## print(jici * 100)
print(title * 10)
fjici = int(jici)
print(fjici)
print(type(fjici))

# 1. 输入苹果单价
price_str = input("请输入苹果价格:")
# 2. 要求苹果重量
weight_str = input("请输入苹果重量:")
# 3. 计算金额
# 1> 将苹果单价转换成小数
price = float(price_str)
# 2> 将苹果重量转换成小数
weight = float(weight_str)
# 3> 计算付款金额
money = price * weight
print(money)
print('------------------1----------------')
a=100#整形变量
b=100.0#浮点型变量
c='zifuxing'#字符串
print(a,b,c)
print('---------------------2------------------')
a=b=c=1
print(a,b,c)
a,b,c=1,2,3
print(a,b,c)
print('--------------------3-------------------')
print('Number 数字')
a,b,c=20,5.5,True
#type可以查询变量所指的数据类型
print(type(a),type(b),type(c))
#也可以用isinstance来判断
# type()不会认为子类是一种父类类型
#isinstance()会认为子类是一种父类类型
print('String 字符串')
str1='zifuchuan'
print(str1[0:-1])#输出第一个到倒数第二个
print(str1[0])#输出第一个字符串
print(str1[2:5])#输出第三个到第五个字符串
print(str1[2:])#输出第三个后面所有的字符串
print(str1*2)#输出字符串2次
print(str1+'Test')#链接字符串
print('列表')
listp=['abc',768,2.33,'liebiao',70.2]
tinylist=[123,'liebiao']
print(listp)#输出完整列表
print(listp[0])#输出列表的第一个元素
print(listp[1:3])#输出第二个元素到第三个元素
print(listp[2:])#输出第三个元素开始的所有元素
print(tinylist*2)#输出两次列表
print(listp+tinylist)#链接两个列表
#该变列表中的元素
a=[1,2,3,4,5,6]
a[0]=9
a[2:5]=[13,14,5]
a[2:5]=[]#可以删除所指定的元素
print('Tuple 元组,用法跟上面的一样但修改不了元素')
print('set 集合')
student={'Tom','Jim','Mary','Tom','Jack','Rose'}
print(student)#输出集合,重复的元素被自动去掉
if 'Rose' in student:
    print('Rose 在集合中')
else:
    print('Rose不在集合中')
#set可以进行集合运算
a=set('abra')
b=set('alac')
print(a)#set可以去重复所以输出啊a,b,r
print(a-b)#a和b的差
print(a|b)#a和b,的并集
print(a&b)#a和b的交集
print(a^b)#a和b不同时存在的元素
print('Dictionary 字典')
tinydict={'name':'runoob','code':'1','site':'www.runoob.com'}
print(tinydict)#输出完整的字典
print(tinydict.keys())#输出所有的建
print(tinydict.values())#输出所有的值
print('----数据类型转换--------')
print(int(3.6))#浮点数转换为整数
print(float(1))#整数转换为浮点数
print(float('123'))#字符串转为浮点数
print(complex(1,2))#整数为复数
print(complex('1'))#字符串为负数
dict={'runoob':'runoob.com','google':'goole.com'}
print(str(dict))
i=int(10)
print(str(i))
print(repr(dict))
x=7
print(eval('3*x'))#可以操作字符串
listi=['Google','Taobao','Runoob','Baidu']
print(tuple(listi))
tpo=tuple(listi)
t=('1','2','3')
print(list(t))
print(tpo)
x=set('runoob')
y=set('google')
print(x,y)

 

格式化字符含义
%s 字符串
%d 有符号十进制整数,%06d 表示输出的整数显示位数,不足的地方使用 0 补全
%f 浮点数,%.2f 表示小数点后只显示两位
%% 输出 %
"""
在控制台依次提示用户输入:姓名、公司、职位、电话、电子邮箱
"""
name = input("请输入姓名:")
company = input("请输入公司:")
title = input("请输入职位:")
phone = input("请输入电话:")
email = input("请输入邮箱:")

print("*" * 50)
print(company)
print()
print("%s (%s)" % (name, title))
print()
print("电话:%d" % int(phone))
print("邮箱:%s" % email)
print("*" * 50)

 

If 语句

import  random

play=int(input("请输入您要出的拳 石头(1)/剪刀(2)/布(3):"))
computer =random.randint(1,3) ## 随机数

print("玩家选择的拳头是 %d - 电脑出的拳是 %d" % (play,computer) )

if play > computer:
    print("玩家Win")
elif play<computer:
    print("电脑win")
else:
    print("Agein")

 

运算符

01. 算数运算符

运算符描述实例
+ 10 + 20 = 30
- 10 - 20 = -10
* 10 * 20 = 200
/ 10 / 20 = 0.5
// 取整除 返回除法的整数部分(商) 9 // 2 输出结果 4
% 取余数 返回除法的余数 9 % 2 = 1
** 又称次方、乘方,2 ** 3 = 8


02. 比较(关系)运算符

运算符描述
== 检查两个操作数的值是否 相等,如果是,则条件成立,返回 True
!= 检查两个操作数的值是否 不相等,如果是,则条件成立,返回 True
> 检查左操作数的值是否 大于 右操作数的值,如果是,则条件成立,返回 True
< 检查左操作数的值是否 小于 右操作数的值,如果是,则条件成立,返回 True
>= 检查左操作数的值是否 大于或等于 右操作数的值,如果是,则条件成立,返回 True
<= 检查左操作数的值是否 小于或等于 右操作数的值,如果是,则条件成立,返回 True


03. 逻辑运算符

运算符逻辑表达式描述
and x and y 只有 x 和 y 的值都为 True,才会返回 True<br />否则只要 x 或者 y 有一个值为 False,就返回 False
or x or y 只要 x 或者 y 有一个值为 True,就返回 True<br />只有 x 和 y 的值都为 False,才会返回 False
not not x 如果 x 为 True,返回 False<br />如果 x 为 False,返回 True


04. 赋值运算符

运算符描述实例
= 简单的赋值运算符 c = a + b 将 a + b 的运算结果赋值为 c
+= 加法赋值运算符 c += a 等效于 c = c + a
-= 减法赋值运算符 c -= a 等效于 c = c - a
*= 乘法赋值运算符 c *= a 等效于 c = c * a
/= 除法赋值运算符 c /= a 等效于 c = c / a
//= 取整除赋值运算符 c //= a 等效于 c = c // a
%= (余数)赋值运算符 c %= a 等效于 c = c % a
**= 幂赋值运算符 c = a 等效于 c = c a


05. 运算符的优先级

运算符描述
** 幂 (最高优先级)
* / % // 乘、除、取余数、取整除
+ - 加法、减法
<= < > >= 比较运算符
== != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
not or and 逻辑运算符

 

 

循环

## 1
i = 1
while i <= 3:
    print("*" * i)
    i += 1
print("i=%d" % i)
print("************")

## 2.计算 0 ~ 100 之间所有数字的累计求和结果
i = 0
result = 0
while i <= 100:
    result += i
    i += 1
print("result=%d" % result)
print("************")

## 3.计算 0 ~ 100 之间 所有 偶数 的累计求和结果
i = 0
result = 0
while i <= 100:
    if i % 2 == 0:
        result += i
    i += 1
print("result=%d" % result)

## 4.break
i = 0
while i < 10:
    # break 某一条件满足时,退出循环,不再执行后续重复的代码
    # i == 3
    if i == 3:
        break
    print(i)
    i += 1
print("over")

## 5.continue- 在循环过程中,如果 某一个条件满足后,不 希望 执行循环代码,但是又不希望退出循环,可以使用 continue
## 也就是:在整个循环中,只有某些条件,不需要执行循环代码,而其他条件都需要执行
i = 0
while i < 10:
    # 当 i == 7 时,不希望执行需要重复执行的代码
    if i == 7:
        # 在使用 continue 之前,同样应该修改计数器
        # 否则会出现死循环
        i += 1
        continue
    # 重复执行的代码
    print(i)
    i += 1

## 6.
i = 0
while i < 6:
    print("* " * i)
    i += 1

## 7
row=1
while row<=9 :
    col=1
    while col<=row :
        print("%d * %d = %d" % (col,row,col*row),end="\t" )## end = "",表示输出结束后,不换行;"\t" 可以在控制台输出一个制表符,协助在输出文本时对齐
        col +=1
    print("") ## 一行打印完成的换行
    row +=1
转义字符描述
\\ 反斜杠符号
\' 单引号
\" 双引号
\n 换行
\t 横向制表符
\r 回车

 

函数

## 1 函数
name = "小明"
# say_hello()
# Python 解释器知道下方定义了一个函数
def say_hello():
    """打招呼"""
    print("hello 1")
    print("hello 2")
    print("hello 3")

print(name)
# 只有在程序中,主动调用函数,才会让函数执行
say_hello()
print(name)

## 2 函数的参数
def sum_2_num(num1, num2):
    result = num1 + num2
    print("%d + %d = %d" % (num1, num2, result))

sum_2_num(50, 20)

## 3 函数的返回值
def sum_2_num(num1, num2):
    """对两个数字的求和"""
    result = num1 + num2
    # 可以使用返回值,告诉调用函数一方计算的结果
    return result
    # 注意:return 就表示返回,下方的代码不会被执行到!
    # num = 1000

# 可以使用变量,来接收函数执行的返回结果
sum_result = sum_2_num(10, 20)
print("计算结果:%d" % sum_result)

## 4  函数的嵌套调用
def test1():
    print("*" * 50)

def test2():
    print("-" * 50)
    # 函数的嵌套调用
    test1()
    print("+" * 50)

test2()

def print_line(char, times):
    """打印单行分隔线
    :param char: 分隔字符
    :param times: 重复次数
    """
    print(char * times)

def print_lines(char, times):
    """打印多行分隔线
    :param char: 分隔线使用的分隔字符
    :param times: 分隔线重复的次数
    """
    row = 0
    while row < 5:
        print_line(char, times)
        row += 1

print_lines("-", 20)

模块

hm_10_分隔线模块.py

def print_line(char, times):

    """打印单行分隔线

    :param char: 分隔字符
    :param times: 重复次数
    """
    print(char * times)


def print_lines(char, times):

    """打印多行分隔线

    :param char: 分隔线使用的分隔字符
    :param times: 分隔线重复的次数
    """
    row = 0

    while row < 5:

        print_line(char, times)

        row += 1


name = "黑马程序员"
import hm_10_分隔线模块

hm_10_分隔线模块.print_line("-", 50)
print(hm_10_分隔线模块.name)

 

posted @ 2021-08-09 09:02  youguess  阅读(53)  评论(0编辑  收藏  举报