python系列-基础
基本数据类型
- 整型
- 浮点型
- 字符串型
- 布尔型
- 复数型
python3整型只有int
,支持二进制;字符串可以用'
或"
,如'hello'
或"hello"
;复数形如3+5j
类型检查
可以使用type
函数对变量类型进行检查
a = 10
b = 12.3
c = 3 + 5j
d = "hello python"
e = True
print(type(a))
print(type(b))
print(type(c))
print(type(d))
print(type(e))
类型转换
int()
: 转换整型,可以指定进制float()
:转换浮点型str()
: 转换字符串,可以指定编码chr()
: 将整数转换成该编码对应的字符串(一个字符)ord()
: 将字符串(一个字符)转换呈对应的编码(整数)
运算符
运算符 | 描述 |
---|---|
[] [:] |
下标,切片 |
** |
指数 |
& | ^ ~ + - |
按位与,按位或,按位异或,按位取反,正负号 |
* / % // |
乘,除,模,整除 |
+ - |
加,减 |
>> << |
右移,左移 |
<= > < >= |
小于等于,大于,小于,大于等于 |
== != |
等于,不等于 |
is is not |
身份运算符 |
in not int |
身份运算符 |
not or and |
逻辑运算符 |
分支结构
if
elif
和else
进行
海伦公式
a = float(input('a='))
b = float(input('b='))
c = float(input('c='))
if a + b > c and a + c > b and b + c > a:
print("len: %f" %(a+b+c))
else:
print("不能构成三角形")
循环结构
for-in循环
对容器进行迭代,优先使用for-in
循环
sum = 0
for x int range(101) :
sum += x
print(sum)
range
函数使用方法:
range(101)
:0-100整数,取不到101range(1,101)
:1-100整数,左闭右开range(1,101,2)
:1-100的奇数,其中2是步长range(100,0,-2)
:100-1的偶数,其中-2是步长
while循环
不知道具体循环次数,优先使用while
循环,用一个bool
值控制while
循环。可以使用break
提前跳出当前循环
import random
answer = random.randint(1,100)
counter = 0
while True:
counter += 1
number = int(input('请输入:'))
if number < answer:
print('大一点')
elif number > answer:
print('小一点')
else:
print('猜对了')
print('猜了%d次' %counter)
if counter > 7:
print('智商余额明显不足')
函数和模块
函数
将一种特定的功能代码封装到一起,组成一个函数,只需要在用的时候调用这个函数就可以了。定义函数用def
关键字,用return
返回一个结果
def fac(num):
result = 1
for n in range(1, num+1):
result *= n
return result
n = int(input("n = "))
m = int(input("m = "))
print(fac(m) // fac(n) // fac(m-n))
python
函数的特点:
- 可以有默认值
- 支持使用可变参数
- 不支持函数重载
- 在参数前面加
*
表示该参数是一个可变参数
def add(*args):
total = 0
for val in args:
total += val
return total
print(add())
print(add(1))
print(add(1,2,3))
模块
python
每个文件名就代表了一个模块,在不同的模块可以有相同名称的函数,使用import
关键字可以导入模块
module1.py
def foo():
print("hello module 1")
module2.py
def foo():
print("hello module 2")
test.py
import module1 as m1
import module2 as m2
m1.foo()
m2.foo()
参考文献
本文作者:xnzone
本文链接:https://www.cnblogs.com/xnzone/p/14385956.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)