python基础语法练习

论坛 期权论坛 脚本     
已经匿名di用户   2022-4-20 22:06   3234   0
一、建议安装anconda,自带很多库,不用自己再去下载

https://www.anaconda.com/download/

二、PyCharm 做为IDE环境,可以自行到官网下载社区版自用,免费

三、变量

不申明类型,直接使用,赋值是什么类型,变量就是什么类型。

变量采用 “ _ ” 连接符,例:student_name,(不像java中使用驼峰命名)
基于python没定义类型,建议一个变量就做一种数据类型使用,否则会给代码以后的调试带来大问题
我们也可以使用type()方法来判断返回变量的类型,做调试用

str() int() float() 可以转换数据类型

四、Python 数据类型
常用数据类型 类型 例子
整数 -100
浮点数 3.1416
字符串 'hello'
列表 [1, 1.2, 'hello']
字典 {'dogs': 5, 'pigs': 3}
Numpy数组 array([1, 2, 3])
其他类型 Others
类型 例子
长整型 1000000000000L
布尔型 True, False
元组 ('ring', 1000)
集合 {1, 2, 3}
Pandas类型 DataFrame, Series
自定义 Object Oriented Classes

五、其它说明

1.方法没有{}这是跟其它语言完全不同的

2.布尔采用 True,False,跟 java是不同的

3.Python 使用一对 """ """ 引号里面可以加入换行,和特殊字符
例如:
str2 = """我说:三个引号可以加入多种字符%&*(
'你快点来'"""

4.字符串与其它类型数据拼接,要使用占位符,不然运行错误
例:a_str1 = "我测试"
a_int = 15
a_float = 1.78
str3 = "%s:他告诉我说:他%d岁了,身高:%f米" % (a_str1, a_int, a_float)
print(str3)

输出结果:我测试:他告诉我说:他15岁了,身高:1.18米

六、案例说明:

没有{},代码对齐很重要,python靠缩进来控制代码层级
不然编译不通过

1.if 使用案例:

score = 75
if score >= 90:
    print("优秀")
elif score >= 80:
    print("良好")
elif score >= 60:
    print("及格")
else:
    print("不及格")
print("end if")

2.while 循环

x = 4
while x <= 15:
    print(x, end=' ')
    x += 1
print("\nend while")

3.for 循环

for y in range(4, 16):
    print(y, end=" ")
print("\nend for")

for y in range(16):
    print(y, end=" ")
print("\nend for2")

练习专用

# 打印直角三角形
# *
# * *
# * * *
n0 = 4
for x in range(n0):
    for y in range(0, x + 1):
        print("*", end=" ")
    print()
print()
# 打印等边三角形
#     *
#    * *
# *   *   *
n = 4
for line in range(n):
    for space_count in range(n - line - 1):
        print(" ", end='')
    for start in range(line + 1):
        print("*", end=" ")
    print()

# 打印100以内的偶数
for b in range(100):
    if b % 2 == 1:
        continue
    print(b, end=" ")
print("\n")


flag = False
for a in range(10):
    if flag is True:
        break
    for b in range(a):
        if b == 7:
            flag = True
            break
        print(b, end=" ")
    print()

4.列表,元祖

list = [1, 1.0, "马云"]

# 直接打印list
print(list)

# 遍历打印list
for item in list:
    print(item, end=' ')

# 空行
print()

# 下标遍历取值,然后打印
for index in range(len(list)):
    print(list[index], end=' ')

# 空行
print()

# 测试列表list的下标,正方向数是0--> 2,返方向是-1 --> -3 这个可以测试下
# 打印-3,-1下标的值
print(list[-3], end=' ')
print(list[-1], end=' \n')
# 打印0,2下标的值
print(list[0], end=' ')
print(list[2], end=' \n')

# 删除第二个list元素
del (list[1])
print(list)

# 末尾插入下个值
list.append("test")
print(list)

# 在下标为1的位置插入
list.insert(1, "234")
print(list)

# 在下标为0的位置插入
list.insert(0, "哥哥")
print(list)

# 删除下标为2-3的值,记着口诀,[ : ) 包头不包尾,java中subString()也是这样
del (list[2:4])
print(list)

# 元祖,是一种不能不能改变值的特殊列表
tuple_test = (2, 3.56, "我")
test = tuple_test
print("tuple_test的值 是:" + str(tuple_test))

# 这里不要改变的值,而是对象变了
tuple_test = tuple_test[:2]
print("tuple_test的值 是:" + str(tuple_test))
print("tuple_test的值 是:" + str(test))

5.字典,这里的字典,跟java 中 hasmap差不多

dict_test = {"key1": "刘冬奎", "key2": "妹妹", "key3": {"阿里": "马云", "腾讯": "马化腾"}, "key4": "任正非"}
print(dict_test.get("key1"))
print(dict_test.get("key2"))
print(dict_test.get("key3"))
print(dict_test.get("key3").get("腾讯"))

print()

for key, value in dict_test.items():
    print(key + ":" + str(value))
key = "key10"
if key in dict_test:
    print(dict_test[key])
else:
    print(key + ":不存在")

6.函数的使用

说明:yeild 是python特有的,可以通过查询,获得集合

# 打印等边三角形
#     *
#    * *
#  *  *  *
# *  *  *  *
# n是打印的行数,返回值count是星星的个数
def print_triangle(n=4):
    count = 0
    for line in range(n):
        for space_count in range(n - line - 1):
            print(" ", end='')
        for start in range(line + 1):
            print("*", end=" ")
            count += 1
        print()
    return count


# 获得偶数,用生成器yield返回一个集合
def get_even(n):
    for i in range(n):
        if i % 2 == 0:
            yield i


# lambda 表达式,简化函数代码
sum1 = lambda arg1, arg2: arg1 + arg2


def sum2(arg3, arg4):
    return arg3 + arg4


for item in get_even(20):
    print(item)
print(print_triangle())
print(sum1(10, 12))
print(sum2(10, 12))

7.类的使用

class ExampleClass:
    # 类变量
    val1 = 100

    # 构造函数
    def __init__(self):
        # 成员变量
        self.val2 = 200
        print("_init_")

    # 类方法
    # 第一个参数必须是self
    def func1(self):
        # 局部变量
        val4 = 300
        # 实例变量
        self.val3 = 400

class ExampleChildClass(ExampleClass):
    def func2(self):
        self.func1()
        self.func2()

本人python初学,欢迎各位大神留言批评指教,谢谢


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP